par_10000_5_rpl_X ### Test -X with 10000 args and 5 replacement strings par_10000_5_rpl_X 3 par_10000_5_rpl_X 2 par_10000_5_rpl_X 2 par_10000_5_rpl_X 2 par_10000_5_rpl_X 1 par_10000_m_X ### Test -m with 10000 args par_10000_m_X 2 29996 186684 par_10000_m_X c606aec1723ee5cc15f2a1b95d83d3cf - par_10000_m_X 3 par_10000_m_X 2 par_10000_m_X 2 par_10000_m_X 2 par_10000_m_X 1 par_X_I_meta ### Test -X -I with shell meta chars par_X_I_meta 2 par_X_I_meta 2 par_X_I_meta 2 par_X_I_meta 2 par_children_receive_sig ### Do children receive --termseq signals par_children_receive_sig parallel: Warning: This job was killed because it timed out: par_children_receive_sig parallel: Warning: show_signals '' par_children_receive_sig Got TERM par_children_receive_sig Got TERM par_children_receive_sig Got TERM par_children_receive_sig parallel: Warning: This job was killed because it timed out: par_children_receive_sig parallel: Warning: show_signals '' par_children_receive_sig Got INT par_children_receive_sig Got TERM par_commandline_with_newline bug #51299: --retry-failed with command with newline par_commandline_with_newline The format must remain the same par_commandline_with_newline . : ... ... . . . . false "commandwithnewlines" a par_commandline_with_newline . : ... ... . . . . false "commandwithnewlines" b par_commandline_with_newline Seq Host Starttime JobRuntime Send Receive Exitval Signal Command par_commandline_with_newline resume par_commandline_with_newline . : ... ... . . . . false "commandwithnewlines" a par_commandline_with_newline . : ... ... . . . . false "commandwithnewlines" b par_commandline_with_newline . : ... ... . . . . false "commandwithnewlines" c par_commandline_with_newline Seq Host Starttime JobRuntime Send Receive Exitval Signal Command par_commandline_with_newline resume-failed par_commandline_with_newline . : ... ... . . . . false "commandwithnewlines" a par_commandline_with_newline . : ... ... . . . . false "commandwithnewlines" b par_commandline_with_newline . : ... ... . . . . false "commandwithnewlines" c par_commandline_with_newline . : ... ... . . . . false "commandwithnewlines" d par_commandline_with_newline Seq Host Starttime JobRuntime Send Receive Exitval Signal Command par_commandline_with_newline retry-failed par_commandline_with_newline . : ... ... . . . . false "commandwithnewlines" a par_commandline_with_newline . : ... ... . . . . false "commandwithnewlines" b par_commandline_with_newline . : ... ... . . . . false "commandwithnewlines" c par_commandline_with_newline . : ... ... . . . . false "commandwithnewlines" d par_commandline_with_newline . : ... ... . . . . false "commandwithnewlines" e par_commandline_with_newline Seq Host Starttime JobRuntime Send Receive Exitval Signal Command par_compute_command_len ### Computing length of command line par_compute_command_len 1 2 par_compute_command_len 11 1 par_compute_command_len 12 2 par_compute_command_len 11 3 par_compute_command_len a_b_c_ par_compute_command_len a_b_c_d par_compute_command_len par_delay ### Test --delay par_delay More than 3.3 secs: OK par_delay_human_readable a par_delay_human_readable b par_delay_human_readable c par_delay_human_readable a par_delay_human_readable b par_delay_human_readable c par_dirnamereplace ### Test --dnr par_dirnamereplace . a par_dirnamereplace a a/b par_dirnamereplace a/b a/b/c par_dirnamereplace ### Test --dirnamereplace par_dirnamereplace . a par_dirnamereplace a a/b par_dirnamereplace a/b a/b/c par_distribute_args_at_EOF ### Test distribute arguments at EOF to 2 jobslots par_distribute_args_at_EOF 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 par_distribute_args_at_EOF 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 par_distribute_args_at_EOF 66 67 68 69 70 71 72 73 74 75 76 77 78 79 par_distribute_args_at_EOF 80 81 82 83 84 85 86 87 88 89 90 91 92 par_distribute_args_at_EOF ### Test distribute arguments at EOF to 5 jobslots par_distribute_args_at_EOF 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 par_distribute_args_at_EOF 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 par_distribute_args_at_EOF 66 67 68 69 70 71 par_distribute_args_at_EOF 72 73 74 75 76 77 par_distribute_args_at_EOF 78 79 80 81 82 83 par_distribute_args_at_EOF 84 85 86 87 88 89 par_distribute_args_at_EOF 90 91 92 par_distribute_args_at_EOF ### Test distribute arguments at EOF to infinity jobslots par_distribute_args_at_EOF 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 par_distribute_args_at_EOF 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 par_distribute_args_at_EOF 66 par_distribute_args_at_EOF 67 par_distribute_args_at_EOF 68 par_distribute_args_at_EOF 69 par_distribute_args_at_EOF 70 par_distribute_args_at_EOF 71 par_distribute_args_at_EOF 72 par_distribute_args_at_EOF 73 par_distribute_args_at_EOF 74 par_distribute_args_at_EOF 75 par_distribute_args_at_EOF 76 par_distribute_args_at_EOF 77 par_distribute_args_at_EOF 78 par_distribute_args_at_EOF 79 par_distribute_args_at_EOF 80 par_distribute_args_at_EOF 81 par_distribute_args_at_EOF 82 par_distribute_args_at_EOF 83 par_distribute_args_at_EOF 84 par_distribute_args_at_EOF 85 par_distribute_args_at_EOF 86 par_distribute_args_at_EOF 87 par_distribute_args_at_EOF 88 par_distribute_args_at_EOF 89 par_distribute_args_at_EOF 90 par_distribute_args_at_EOF 91 par_distribute_args_at_EOF 92 par_distribute_args_at_EOF ### Test -N is not broken by distribution - single line par_distribute_args_at_EOF 1 2 3 4 5 6 7 8 9 par_distribute_args_at_EOF ### Test -N is not broken by distribution - two lines par_distribute_args_at_EOF 1 2 3 4 5 6 7 8 9 10 par_distribute_args_at_EOF 11 12 13 14 15 16 17 18 19 par_do_not_export_PARALLEL_ENV ### Do not export $PARALLEL_ENV to children par_do_not_export_PARALLEL_ENV Should be 0 par_do_not_export_PARALLEL_ENV 1 0 1 par_do_not_export_PARALLEL_ENV Should give 60k and not overflow par_do_not_export_PARALLEL_ENV 1 1 60001 par_empty_string_quote bug #37694: Empty string argument skipped when using --quote par_empty_string_quote 3 par_eta ### Test of --eta par_eta 16 par_eta ### Test of --eta with no jobs par_eta par_eta Computers / CPU cores / Max jobs to run par_eta 1:local / 8 / 1 par_eta par_eta ETA: 0s Left: 0 AVG: 0.00s 0 par_exitval_signal ### Test --joblog with exitval and Test --joblog with signal -- timing dependent par_exitval_signal exitval=128+6 OK par_exitval_signal signal OK par_jobslot_repl bug #46232: {%} with --bar/--eta/--shuf or --halt xx% broken par_jobslot_repl 1 par_jobslot_repl 2 par_jobslot_repl 1 par_jobslot_repl 2 par_jobslot_repl 1 par_jobslot_repl 2 par_jobslot_repl 1 par_jobslot_repl 2 par_jobslot_repl 1 par_jobslot_repl 2 par_jobslot_repl 1 par_jobslot_repl 2 par_jobslot_repl 1 par_jobslot_repl 2 par_jobslot_repl 1 par_jobslot_repl 2 par_jobslot_repl 1 par_jobslot_repl 2 par_jobslot_repl 1 par_jobslot_repl 2 par_jobslot_repl 1 par_jobslot_repl 2 par_jobslot_repl 1 par_jobslot_repl 2 par_jobslot_repl bug #46231: {%} with --pipepart broken. Should give 1+2 par_jobslot_repl 1 par_jobslot_repl 2 par_jobslot_repl 1 par_jobslot_repl 2 par_jobslot_repl 1 par_kill_int_twice ### Are children killed if GNU Parallel receives INT twice? There should be no sleep at the end par_kill_int_twice bash-+-perl---bash---sleep par_kill_int_twice `-pstree par_kill_int_twice bash---pstree par_kill_term ### Are children killed if GNU Parallel receives TERM? There should be no sleep at the end par_kill_term bash-+-perl---bash---sleep par_kill_term `-pstree par_kill_term bash---pstree par_lb_mem_usage 1 par_lb_mem_usage 1 par_lb_mem_usage 2 par_maxargs ### Test -n and --max-args: Max number of args per line (only with -X and -m) par_maxargs line 1 par_maxargs line 2 par_maxargs line 3 par_maxargs line 1 line 1 par_maxargs line 2 par_maxargs line 1 par_maxargs line 2 par_maxargs line 3 par_maxargs line 1 line 1 par_maxargs line 2 par_maxargs line 1 par_maxargs line 2 par_maxargs line 3 par_maxargs line 1 line 1 par_maxargs line 2 par_maxargs line 1 par_maxargs line 2 par_maxargs line 3 par_maxargs line 1 par_maxargs line 2 par_maxargs line 3 par_maxargs line 1 line 1 par_maxargs line 2 par_maxargs line 1 line 1 par_maxargs line 2 par_maxargs line 1 par_maxargs line 2 par_maxargs line 3 par_maxargs line 1 line 1 par_maxargs line 2 par_multiline_commands bug #50781: joblog format with multiline commands par_multiline_commands 1 par_multiline_commands finish 1 par_multiline_commands 2 par_multiline_commands finish 2 par_multiline_commands parallel: Warning: This job was killed because it timed out: par_multiline_commands parallel: Warning: sleep 4; echo 4; par_multiline_commands echo finish 4 par_multiline_commands parallel: Warning: Command lines contain newline. Forcing --null. par_multiline_commands 4 par_multiline_commands finish 4 par_negative_replacement ### Negative replacement strings par_negative_replacement correct par_negative_replacement correct par_negative_replacement 2 + 4 = 2 + 4= 6 par_negative_replacement correct par_pipepart_block ### --pipepart --block -# (# < 0) par_pipepart_block 1 par_pipepart_block 2 par_pipepart_block 3 par_pipepart_block 4 par_pipepart_block 5 par_pipepart_block 6 par_pipepart_block 7 par_pipepart_block 8 par_pipepart_block 9 par_pipepart_block 10 par_pipepart_block 11 par_pipepart_block 12 par_pipepart_block 13 par_pipepart_block 14 par_pipepart_block 15 par_pipepart_block 16 par_pipepart_block 17 par_pipepart_block 18 par_pipepart_block 19 par_pipepart_block 20 par_pipepart_block 1-2 par_pipepart_block 2-2 par_pipepart_block 1-4 par_pipepart_block 2-4 par_pipepart_block 3-4 par_pipepart_block 4-4 par_pipepart_block 1-20 par_pipepart_block 2-20 par_pipepart_block 3-20 par_pipepart_block 4-20 par_pipepart_block 5-20 par_pipepart_block 6-20 par_pipepart_block 7-20 par_pipepart_block 8-20 par_pipepart_block 9-20 par_pipepart_block 10-20 par_pipepart_block 11-20 par_pipepart_block 12-20 par_pipepart_block 13-20 par_pipepart_block 14-20 par_pipepart_block 15-20 par_pipepart_block 16-20 par_pipepart_block 17-20 par_pipepart_block 18-20 par_pipepart_block 19-20 par_pipepart_block 20-20 par_progress ### Test of --progress par_progress 16 par_progress ### Test of --progress with no jobs par_progress par_progress Computers / CPU cores / Max jobs to run par_progress 1:local / 8 / 1 par_progress par_progress 0 par_replacement_slashslash ### Test {//} par_replacement_slashslash . a par_replacement_slashslash a a/b par_replacement_slashslash a/b a/b/c par_replacement_slashslash / /a par_replacement_slashslash /a /a/b par_replacement_slashslash /a/b /a/b/c par_replacement_slashslash . ./a par_replacement_slashslash ./a ./a/b par_replacement_slashslash ./a/b ./a/b/c par_replacement_slashslash . a.jpg par_replacement_slashslash a a/b.jpg par_replacement_slashslash a/b a/b/c.jpg par_replacement_slashslash / /a.jpg par_replacement_slashslash /a /a/b.jpg par_replacement_slashslash /a/b /a/b/c.jpg par_replacement_slashslash . ./a.jpg par_replacement_slashslash ./a ./a/b.jpg par_replacement_slashslash ./a/b ./a/b/c.jpg par_replacement_slashslash ### Test {1//} par_replacement_slashslash . a par_replacement_slashslash a a/b par_replacement_slashslash a/b a/b/c par_replacement_slashslash / /a par_replacement_slashslash /a /a/b par_replacement_slashslash /a/b /a/b/c par_replacement_slashslash . ./a par_replacement_slashslash ./a ./a/b par_replacement_slashslash ./a/b ./a/b/c par_replacement_slashslash . a.jpg par_replacement_slashslash a a/b.jpg par_replacement_slashslash a/b a/b/c.jpg par_replacement_slashslash / /a.jpg par_replacement_slashslash /a /a/b.jpg par_replacement_slashslash /a/b /a/b/c.jpg par_replacement_slashslash . ./a.jpg par_replacement_slashslash ./a ./a/b.jpg par_replacement_slashslash ./a/b ./a/b/c.jpg par_resume_k ### --resume -k par_resume_k job0id par_resume_k job1id par_resume_k job2id par_resume_k job3id par_resume_k job0id par_resume_k job5id par_resume_k try 2 = nothing par_resume_k two extra par_resume_k job6id par_resume_k job7id par_rpl_repeats ### Test {.} does not repeat more than {} par_rpl_repeats a1.gifb1c1 a2.gifb2c2 a3.gifb3c3 a4.gifb4c4 a5.gifb5c5 a6.gifb6c6 par_rpl_repeats a7.gifb7c7 a8.gifb8c8 a9.gifb9c9 a10.gifb10c10 a11.gifb11c11 a12.gifb12c12 par_rpl_repeats a13.gifb13c13 a14.gifb14c14 a15.gifb15c15 par_rpl_repeats a1.gif 2.gif 3.gif 4.gif 5.gif 6.gif 7.gifb1 2 3 4 5 6 7c1 2 3 4 5 6 7 par_rpl_repeats a8.gif 9.gif 10.gif 11.gif 12.gif 13.gifb8 9 10 11 12 13c8 9 10 11 12 13 par_rpl_repeats a14.gif 15.gifb14 15c14 15 par_slow_args_generation ### Test slow arguments generation - https://savannah.gnu.org/bugs/?32834 par_slow_args_generation 1 par_slow_args_generation 2 par_slow_args_generation 3 par_sqlandworker_uninstalled_dbd bug #56096: dbi-csv no such column par_sqlandworker_uninstalled_dbd parallel: Error: CSV not supported. Are you missing a perl DBD::CSV module? par_sqlandworker_uninstalled_dbd works par_sqlworker_hostname bug #50901: --sqlworker should use hostname in the joblog instead of : par_sqlworker_hostname 1 par_sqlworker_hostname 2 par_sqlworker_hostname 3 par_sqlworker_hostname host par_sqlworker_hostname par_sqlworker_hostname par_sqlworker_hostname par_sshdelay ### test --sshdelay par_sshdelay OK par_tee_with_premature_close --tee --pipe should send all data to all commands par_tee_with_premature_close even if a command closes stdin before reading everything par_tee_with_premature_close tee with --output-error=warn-nopipe support par_tee_with_premature_close 1000000 1000000 6888896 par_tee_with_premature_close 1 par_tee_with_premature_close 2 par_tee_with_premature_close 3 par_tee_with_premature_close 4 par_tee_with_premature_close 5 par_tee_with_premature_close 6 par_tee_with_premature_close 7 par_tee_with_premature_close 8 par_tee_with_premature_close 9 par_tee_with_premature_close 10 par_tee_with_premature_close 999991 par_tee_with_premature_close 999992 par_tee_with_premature_close 999993 par_tee_with_premature_close 999994 par_tee_with_premature_close 999995 par_tee_with_premature_close 999996 par_tee_with_premature_close 999997 par_tee_with_premature_close 999998 par_tee_with_premature_close 999999 par_tee_with_premature_close 1000000 par_tee_with_premature_close tee without --output-error=warn-nopipe support par_tee_with_premature_close OK par_test_X_with_multiple_source ### Test {} multiple times in different commands par_test_X_with_multiple_source echo 1 2 3 4 5 6 7 8 9 10 ; echo 1 2 3 4 5 6 7 8 9 10 par_test_X_with_multiple_source 1 2 3 4 5 6 7 8 9 10 par_test_X_with_multiple_source 1 2 3 4 5 6 7 8 9 10 par_test_X_with_multiple_source ### Test of -X {1}-{2} with multiple input sources par_test_X_with_multiple_source a-b par_test_X_with_multiple_source a-c par_test_X_with_multiple_source b-c par_test_X_with_multiple_source a-d par_test_X_with_multiple_source b-f par_test_X_with_multiple_source a-d par_test_X_with_multiple_source a-e par_test_X_with_multiple_source a-f par_test_X_with_multiple_source b-d par_test_X_with_multiple_source b-e par_test_X_with_multiple_source b-f par_test_X_with_multiple_source c-d par_test_X_with_multiple_source c-e par_test_X_with_multiple_source c-f par_test_X_with_multiple_source ### Test of -X {}-{.} with multiple input sources par_test_X_with_multiple_source a-a b-b par_test_X_with_multiple_source a-a c-c a-a d-d par_test_X_with_multiple_source b-b c-c b-b d-d par_test_X_with_multiple_source a-a d-d a-a e-e a-a f-f b-b d-d b-b e-e par_test_X_with_multiple_source b-b f-f c-c d-d c-c e-e c-c f-f par_test_X_with_multiple_source a-a d-d par_test_X_with_multiple_source a-a e-e par_test_X_with_multiple_source a-a f-f par_test_X_with_multiple_source b-b d-d par_test_X_with_multiple_source b-b e-e par_test_X_with_multiple_source b-b f-f par_test_X_with_multiple_source c-c d-d par_test_X_with_multiple_source c-c e-e par_test_X_with_multiple_source c-c f-f par_totaljob_repl {##} bug #45841: Replacement string for total no of jobs par_totaljob_repl 10 par_totaljob_repl 10 par_totaljob_repl 10 par_totaljob_repl 10 par_totaljob_repl 10 par_totaljob_repl 10 par_totaljob_repl 10 par_totaljob_repl 10 par_totaljob_repl 10 par_totaljob_repl 10 par_totaljob_repl 1 par_totaljob_repl 2 par_totaljob_repl 3 par_totaljob_repl 4 par_totaljob_repl 10 par_totaljob_repl 10 par_totaljob_repl 10 par_totaljob_repl 10 par_totaljob_repl 10 par_totaljob_repl 10 par_totaljob_repl 1 2 2 2 2 2 2 2 par_totaljob_repl 2 2 2 2 2 2 2 2 par_totaljob_repl 1 3 3 3 3 3 3 3 par_totaljob_repl 2 3 3 3 3 3 3 3 par_totaljob_repl 3 3 par_totaljob_repl 1 15 15 par_totaljob_repl 2 14 14 par_totaljob_repl 3 14 14 par_totaljob_repl 4 14 14 par_totaljob_repl 5 14 14 par_totaljob_repl 6 14 14 par_totaljob_repl 7 14 14 par_totaljob_repl 8 14 par_wrong_slot_rpl_resume ### bug #47644: Wrong slot number replacement when resuming par_wrong_slot_rpl_resume 1 0 par_wrong_slot_rpl_resume 2 1 par_wrong_slot_rpl_resume 3 2 par_wrong_slot_rpl_resume 4 3 par_wrong_slot_rpl_resume 1 4 par_wrong_slot_rpl_resume 2 5 par_wrong_slot_rpl_resume 3 6 par_wrong_slot_rpl_resume 4 7 par_wrong_slot_rpl_resume 1 8 par_wrong_slot_rpl_resume 2 9 par_wrong_slot_rpl_resume 3 10 par_wrong_slot_rpl_resume 4 11 par_wrong_slot_rpl_resume 1 12 par_wrong_slot_rpl_resume 2 13 par_wrong_slot_rpl_resume 3 14 par_wrong_slot_rpl_resume 4 15 par_wrong_slot_rpl_resume 1 16 par_wrong_slot_rpl_resume 2 17 par_wrong_slot_rpl_resume 3 18 par_wrong_slot_rpl_resume 4 19 par_wrong_slot_rpl_resume 1 20