parallel/testsuite/wanted-results/parallel-local-0.3s

1513 lines
54 KiB
Plaintext
Raw Blame History

echo '### Test bug #43376: {%} and {#} with --pipe'
### Test bug #43376: {%} and {#} with --pipe
echo foo | parallel -q --pipe -k echo {#}
1
echo foo | parallel --pipe -k echo {%}
1
echo foo | parallel -q --pipe -k echo {%}
1
echo foo | parallel --pipe -k echo {#}
1
echo '**'
**
echo '### {} as part of the command'
### {} as part of the command
echo p /bin/ls | parallel l{= s/p/s/ =}
/bin/ls
echo /bin/ls-p | parallel --colsep '-' l{=2 s/p/s/ =} {1}
/bin/ls
echo s /bin/ls | parallel l{}
/bin/ls
echo /bin/ls | parallel ls {}
/bin/ls
echo ls /bin/ls | parallel {}
/bin/ls
echo ls /bin/ls | parallel
/bin/ls
echo '**'
**
echo '### bug #43817: Some JP char cause problems in positional replacement strings'
### bug #43817: Some JP char cause problems in positional replacement strings
parallel -k echo ::: '<27><<3C>>' '<27><1 $_=2<>>' 'ワ'
<EFBFBD><<3C>>
<EFBFBD><1 $_=2<>>
parallel -k echo {1} ::: '<27><<3C>>' '<27><1 $_=2<>>' 'ワ'
<EFBFBD><<3C>>
<EFBFBD><1 $_=2<>>
parallel -Xj1 echo ::: '<27><<3C>>' '<27><1 $_=2<>>' 'ワ'
<EFBFBD><<3C>> <20><1 $_=2<>> ワ
parallel -Xj1 echo {1} ::: '<27><<3C>>' '<27><1 $_=2<>>' 'ワ'
<EFBFBD><<3C>>
echo '**'
**
echo '### --rpl % that is a substring of longer --rpl %D'
### --rpl % that is a substring of longer --rpl %D
parallel --rpl '{+.} s:.*\.::' --rpl '%' --rpl '%D $_=::shell_quote(::dirname($_));' --rpl '%B s:.*/::;s:\.[^/.]+$::;' --rpl '%E s:.*\.::' 'echo {}=%;echo %D={//};echo %B={/.};echo %E={+.};echo %D/%B.%E={}' ::: a.b/c.d/e.f
a.b/c.d/e.f=a.b/c.d/e.f
a.b/c.d=a.b/c.d
e=e
f=f
a.b/c.d/e.f=a.b/c.d/e.f
echo '**'
**
echo '### Disk full'
### Disk full
cat /dev/zero >$SMALLDISK/out; parallel --tmpdir $SMALLDISK echo ::: OK; rm $SMALLDISK/out
cat: write error: No space left on device
parallel: Error: Output is incomplete.
parallel: Error: Cannot append to buffer file in /mnt/ram.
parallel: Error: Is the disk full?
parallel: Error: Change $TMPDIR with --tmpdir or use --compress.
Warning: unable to close filehandle properly: No space left on device during global destruction.
echo '**'
**
echo '### PARALLEL_TMUX not found'
### PARALLEL_TMUX not found
PARALLEL_TMUX=not-existing parallel --tmux echo ::: 1
parallel: Error: not-existing not found in $PATH.
echo '**'
**
echo '### bug #44995: parallel echo {#} ::: 1 2 ::: 1 2'
### bug #44995: parallel echo {#} ::: 1 2 ::: 1 2
parallel -k echo {#} ::: 1 2 ::: 1 2
1
2
3
4
echo '**'
**
echo 'bug #46016: --joblog should not log when --dryrun'
bug #46016: --joblog should not log when --dryrun
parallel --dryrun --joblog - echo ::: Only_this
echo Only_this
echo '**'
**
echo 'bug #47002: --tagstring with -d \n\n'
bug #47002: --tagstring with -d \n\n
(seq 3;echo;seq 4) | parallel -k -d '\n\n' --tagstring {%} echo ABC';'echo
1 ABC
1 1
1 2
1 3
2 ABC
2 1
2 2
2 3
2 4
2
echo '**'
**
echo 'bug #47290: xargs: Warning: a NUL character occurred in the input'
bug #47290: xargs: Warning: a NUL character occurred in the input
perl -e 'print "foo\0not printed"' | parallel echo
foo\0not printed
parallel: Warning: A NUL character in the input was replaced with \0.
parallel: Warning: NUL cannot be passed through in the argument list.
parallel: Warning: Did you mean to use the --null option?
echo '**'
**
echo '### Test --max-procs and -P: Number of processes'
### Test --max-procs and -P: Number of processes
seq 1 10 | parallel -k --max-procs +0 echo max proc
max proc 1
max proc 2
max proc 3
max proc 4
max proc 5
max proc 6
max proc 7
max proc 8
max proc 9
max proc 10
seq 1 10 | parallel -k -P 200% echo 200% proc
200% proc 1
200% proc 2
200% proc 3
200% proc 4
200% proc 5
200% proc 6
200% proc 7
200% proc 8
200% proc 9
200% proc 10
echo '### Test --max-chars and -s: Max number of chars in a line'
### Test --max-chars and -s: Max number of chars in a line
(echo line 1;echo line 1;echo line 2) | parallel -k --max-chars 25 -X echo
line 1 line 1
line 2
(echo line 1;echo line 1;echo line 2) | parallel -k -s 25 -X echo
line 1 line 1
line 2
echo '### Test --no-run-if-empty and -r: This should give no output'
### Test --no-run-if-empty and -r: This should give no output
echo " " | parallel -r echo
echo " " | parallel --no-run-if-empty echo
echo '### Test --help and -h: Help output (just check we get the same amount of lines)'
### Test --help and -h: Help output (just check we get the same amount of lines)
echo Output from -h and --help
Output from -h and --help
parallel -h | wc -l
37
parallel --help | wc -l
37
echo '### Test --version: Version output (just check we get the same amount of lines)'
### Test --version: Version output (just check we get the same amount of lines)
parallel --version | wc -l
10
echo '### Test --verbose and -t'
### Test --verbose and -t
(echo b; echo c; echo f) | parallel -k -t echo {}ar 2>&1 >/dev/null
echo bar
echo car
echo far
(echo b; echo c; echo f) | parallel -k --verbose echo {}ar 2>&1 >/dev/null
echo bar
echo car
echo far
echo '### Test --show-limits'
### Test --show-limits
(echo b; echo c; echo f) | parallel -k --show-limits echo {}ar
Maximal size of command: 131049
Maximal used size of command: 131049
Execution of will continue now, and it will try to read its input
and run commands; if this is not what you wanted to happen, please
press CTRL-D or CTRL-C
bar
car
far
(echo b; echo c; echo f) | parallel -j1 -kX --show-limits -s 100 echo {}ar
Maximal size of command: 131049
Maximal used size of command: 100
Execution of will continue now, and it will try to read its input
and run commands; if this is not what you wanted to happen, please
press CTRL-D or CTRL-C
bar car far
echo '### Test 0-arguments'
### Test 0-arguments
seq 1 2 | parallel -k -n0 echo n0
n0
n0
seq 1 2 | parallel -k -L0 echo L0
L0
L0
seq 1 2 | parallel -k -N0 echo N0
N0
N0
echo '### Because of --tollef -l, then -l0 == -l1, sorry'
### Because of --tollef -l, then -l0 == -l1, sorry
seq 1 2 | parallel -k -l0 echo l0
l0 1
l0 2
echo '### Test replace {}'
### Test replace {}
seq 1 2 | parallel -k -N0 echo replace {} curlies
replace curlies
replace curlies
echo '### Test arguments on commandline'
### Test arguments on commandline
parallel -k -N0 echo args on cmdline ::: 1 2
args on cmdline
args on cmdline
echo '### Test --nice locally'
### Test --nice locally
parallel --nice 1 -vv 'PAR=a bash -c "echo \$PAR {}"' ::: b
PAR=a bash -c "echo \$PAR b"
a b
### 1 .par file from --files expected
0
par_0_no_newline A single zero without \n should not be ignored
par_0_no_newline 0
par_END ### Test -i and --replace: Replace with argument
par_END replace
par_END replace
par_END replace
par_END replace
par_END replace
par_END replace
par_END replace
par_END replace
par_END replace
par_END ### Test -E: Artificial end-of-file
par_END include this
par_END include this
par_END ### Test -e and --eof: Artificial end-of-file
par_END include this
par_END include this
par_END include this
par_END include this
par_PARALLEL_ENV ### PARALLEL_ENV as variable
par_PARALLEL_ENV OK as variable
par_PARALLEL_ENV ### PARALLEL_ENV as file
par_PARALLEL_ENV OK as file
par_PARALLEL_ENV ### PARALLEL_ENV as fifo
par_PARALLEL_ENV OK as fifo
par_X_eta_div_zero ### bug #34422: parallel -X --eta crashes with div by zero
par_X_eta_div_zero Computers / CPU cores / Max jobs to run
par_X_eta_div_zero 0:local / 0 / 0
par_append_joblog ### can you append to a joblog using +
par_append_joblog 1
par_append_joblog 1
par_append_joblog 3 /tmp/parallel_append_joblog
par_argfile ### Test -a and --arg-file: Read input from file instead of stdin
par_argfile 1
par_argfile 2
par_argfile 3
par_argfile 4
par_argfile 5
par_argfile 6
par_argfile 7
par_argfile 8
par_argfile 9
par_argfile 10
par_argfile 1
par_argfile 2
par_argfile 3
par_argfile 4
par_argfile 5
par_argfile 6
par_argfile 7
par_argfile 8
par_argfile 9
par_argfile 10
par_basic_halt parallel: This job failed:
par_basic_halt false
par_basic_halt parallel: This job succeeded:
par_basic_halt true
par_basic_halt parallel: Error: --halt must have 'never', 'soon', or 'now'.
par_basic_halt parallel: Error: --halt soon must be followed by ,success or ,fail.
par_basic_halt parallel: Error: --halt now must be followed by ,success or ,fail.
par_blocking_redir 0 0 0
par_blocking_redir 0 0 0
par_blocking_redir 1 9 54
par_blocking_redir 3 3 6
par_blocking_redir Test stderr
par_blocking_redir Test stdout
par_blocking_redir bug #52740: Bash redirection with process substitution blocks
par_blocking_redir stderr
par_blocking_redir stderr
par_blocking_redir stdout
par_blocking_redir stdout
par_colsep_0 bug --colsep 0
par_colsep_0 OK
par_colsep_0 OK
par_csv col1"x3"-new
par_csv line col2-new2
par_csv line col3-col 4
par_csv 2"x3" board-Value with ,-Column 3
par_csv_pipe Only pass full records to tail
par_csv_pipe Too small block size
par_csv_pipe parallel: Warning: A record was longer than 10000. Increasing to --blocksize 13001.
par_csv_pipe parallel: Warning: A record was longer than 13001. Increasing to --blocksize 16903.
par_csv_pipe 2000"
par_csv_pipe 3000"
par_csv_pipe 4000"
par_csv_pipe 5000"
par_csv_pipe 6000"
par_csv_pipe 7000"
par_csv_pipe 8000"
par_csv_pipe 9000"
par_csv_pipe 10000"
par_csv_pipe 11000"
par_csv_pipe More records in single block
par_csv_pipe 9000"
par_csv_pipe 11000"
par_delimiter ### Test --delimiter and -d: Delimiter instead of newline
par_delimiter # Yes there is supposed to be an extra newline for -d N
par_delimiter This is line 1
par_delimiter This is line 2
par_delimiter This is line 3
par_delimiter
par_delimiter This is line 1
par_delimiter This is line 2
par_delimiter This is line 3
par_delimiter
par_delimiter delimiter NUL line 1
par_delimiter line 2
par_delimiter line 3
par_delimiter delimiter TAB line 1
par_delimiter line 2
par_delimiter line 3
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_dryrun_append_joblog --dry-run should not append to joblog
par_dryrun_append_joblog 1
par_dryrun_append_joblog 2
par_dryrun_append_joblog 3
par_dryrun_append_joblog echo 1
par_dryrun_append_joblog echo 2
par_dryrun_append_joblog echo 3
par_dryrun_append_joblog echo 4
par_dryrun_append_joblog 4
par_empty bug #:
par_empty true
par_empty_command bug #54647: parset ignores empty lines
par_empty_command
par_empty_command Empty:
par_empty_command B: B
par_empty_input_on_stdin https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=910470
par_empty_input_on_stdin This should give no output
par_empty_line ### Test bug: empty line for | sh with -k
par_empty_line a
par_empty_line b
par_exit_val ### Test bug #45619: "--halt" erroneous error exit code (should give 0)
par_exit_val 0
par_exit_val ### Test exit val - true
par_exit_val 0
par_exit_val ### Test exit val - false
par_exit_val 1
par_expansion_in_colsep ### bug #36260: {n} expansion in --colsep files fails for empty fields if all following fields are also empty
par_expansion_in_colsep AB
par_extglob env_parallel
par_file_ending_in_newline ### Hans found a bug giving unitialized variable
par_file_ending_in_newline gzip /tmp/parallel_f1
par_file_ending_in_newline gzip '/tmp/parallel_f2
par_file_ending_in_newline '
par_halt_on_error_division_by_zero ### --halt-on-error soon,fail=100% with no input should not give division by zero
par_halt_on_error_division_by_zero 0
par_halt_one_job # Halt soon if there is a single job
par_halt_one_job should run 0 1 = job 1 2
par_halt_one_job 1
par_halt_one_job 2
par_halt_one_job parallel: This job failed:
par_halt_one_job echo 2;exit 1
par_halt_one_job should run 1 = job 1
par_halt_one_job 1
par_halt_one_job parallel: This job failed:
par_halt_one_job echo 1;exit 1
par_halt_one_job should run 0 1 = job 1 2
par_halt_one_job 1
par_halt_one_job 2
par_halt_one_job parallel: This job failed:
par_halt_one_job echo 2;exit 1
par_halt_one_job parallel: Starting no more jobs. Waiting for 0 jobs to finish.
par_halt_one_job should run 1 = job 1
par_halt_one_job 1
par_halt_one_job parallel: This job failed:
par_halt_one_job echo 1;exit 1
par_halt_one_job parallel: Starting no more jobs. Waiting for 0 jobs to finish.
par_inefficient_L bug #37325: Inefficiency of --pipe -L
par_inefficient_L 276 276 996
par_inefficient_L FOO
par_inefficient_L 248 248 992
par_inefficient_L FOO
par_inefficient_L 248 248 992
par_inefficient_L FOO
par_inefficient_L 244 244 993
par_inefficient_L FOO
par_inefficient_L 200 200 1000
par_inefficient_L FOO
par_inefficient_L 200 200 1000
par_inefficient_L FOO
par_inefficient_L 200 200 1000
par_inefficient_L FOO
par_inefficient_L 200 200 1000
par_inefficient_L FOO
par_inefficient_L 184 184 920
par_inefficient_L FOO
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_linebuffer_files ### bug #48658: --linebuffer --files
par_linebuffer_files 10
par_link_files_as_only_arg bug #50685: single ::::+ does not work
par_link_files_as_only_arg 1 1 1
par_link_files_as_only_arg 2 2 2
par_link_files_as_only_arg 3 3 3
par_locale_quoting ### quoting in different locales
par_locale_quoting <09>`/tmp/test<73>`
par_locale_quoting $LC_ALL <20>`/tmp/test<73>`
par_locale_quoting echo $LC_ALL '<27>`/tmp/test<73>`'
par_locale_quoting zh_HK.big5hkscs <20>`/tmp/test<73>`
par_long_cmd_mem_use ### Test long commands do not take up all memory
par_long_cmd_mem_use 1
par_long_cmd_mem_use 10
par_long_cmd_mem_use 100
par_long_cmd_mem_use 11
par_long_cmd_mem_use 12
par_long_cmd_mem_use 13
par_long_cmd_mem_use 14
par_long_cmd_mem_use 15
par_long_cmd_mem_use 16
par_long_cmd_mem_use 17
par_long_cmd_mem_use 18
par_long_cmd_mem_use 19
par_long_cmd_mem_use 2
par_long_cmd_mem_use 20
par_long_cmd_mem_use 21
par_long_cmd_mem_use 22
par_long_cmd_mem_use 23
par_long_cmd_mem_use 24
par_long_cmd_mem_use 25
par_long_cmd_mem_use 26
par_long_cmd_mem_use 27
par_long_cmd_mem_use 28
par_long_cmd_mem_use 29
par_long_cmd_mem_use 3
par_long_cmd_mem_use 30
par_long_cmd_mem_use 31
par_long_cmd_mem_use 32
par_long_cmd_mem_use 33
par_long_cmd_mem_use 34
par_long_cmd_mem_use 35
par_long_cmd_mem_use 36
par_long_cmd_mem_use 37
par_long_cmd_mem_use 38
par_long_cmd_mem_use 39
par_long_cmd_mem_use 4
par_long_cmd_mem_use 40
par_long_cmd_mem_use 41
par_long_cmd_mem_use 42
par_long_cmd_mem_use 43
par_long_cmd_mem_use 44
par_long_cmd_mem_use 45
par_long_cmd_mem_use 46
par_long_cmd_mem_use 47
par_long_cmd_mem_use 48
par_long_cmd_mem_use 49
par_long_cmd_mem_use 5
par_long_cmd_mem_use 50
par_long_cmd_mem_use 51
par_long_cmd_mem_use 52
par_long_cmd_mem_use 53
par_long_cmd_mem_use 54
par_long_cmd_mem_use 55
par_long_cmd_mem_use 56
par_long_cmd_mem_use 57
par_long_cmd_mem_use 58
par_long_cmd_mem_use 59
par_long_cmd_mem_use 6
par_long_cmd_mem_use 60
par_long_cmd_mem_use 61
par_long_cmd_mem_use 62
par_long_cmd_mem_use 63
par_long_cmd_mem_use 64
par_long_cmd_mem_use 65
par_long_cmd_mem_use 66
par_long_cmd_mem_use 67
par_long_cmd_mem_use 68
par_long_cmd_mem_use 69
par_long_cmd_mem_use 7
par_long_cmd_mem_use 70
par_long_cmd_mem_use 71
par_long_cmd_mem_use 72
par_long_cmd_mem_use 73
par_long_cmd_mem_use 74
par_long_cmd_mem_use 75
par_long_cmd_mem_use 76
par_long_cmd_mem_use 77
par_long_cmd_mem_use 78
par_long_cmd_mem_use 79
par_long_cmd_mem_use 8
par_long_cmd_mem_use 80
par_long_cmd_mem_use 81
par_long_cmd_mem_use 82
par_long_cmd_mem_use 83
par_long_cmd_mem_use 84
par_long_cmd_mem_use 85
par_long_cmd_mem_use 86
par_long_cmd_mem_use 87
par_long_cmd_mem_use 88
par_long_cmd_mem_use 89
par_long_cmd_mem_use 9
par_long_cmd_mem_use 90
par_long_cmd_mem_use 91
par_long_cmd_mem_use 92
par_long_cmd_mem_use 93
par_long_cmd_mem_use 94
par_long_cmd_mem_use 95
par_long_cmd_mem_use 96
par_long_cmd_mem_use 97
par_long_cmd_mem_use 98
par_long_cmd_mem_use 99
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 1
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 10
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 100
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 11
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 12
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 13
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 14
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 15
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 16
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 17
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 18
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 19
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 2
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 20
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 21
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 22
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 23
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 24
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 25
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 26
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 27
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 28
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 29
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 3
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 30
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 31
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 32
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 33
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 34
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 35
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 36
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 37
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 38
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 39
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 4
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 40
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 41
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 42
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 43
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 44
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 45
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 46
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 47
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 48
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 49
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 5
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 50
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 51
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 52
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 53
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 54
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 55
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 56
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 57
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 58
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 59
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 6
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 60
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 61
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 62
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 63
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 64
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 65
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 66
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 67
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 68
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 69
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 7
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 70
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 71
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 72
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 73
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 74
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 75
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 76
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 77
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 78
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 79
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 8
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 80
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 81
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 82
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 83
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 84
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 85
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 86
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 87
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 88
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 89
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 9
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 90
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 91
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 92
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 93
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 94
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 95
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 96
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 97
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 98
par_long_cmd_mem_use perl -e '$r=rand(shift); for($f = 0; $f < $r; $f++){ $a = "a"x100 } print shift,"\n"' 10000 99
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_newline_in_command Command with newline and positional replacement strings
par_newline_in_command O K
par_no_command_given ### Test bugfix if no command given
par_no_command_given 1 2
par_no_command_given /bin/bash: 3: command not found
par_no_command_given parallel: Error: Command line too long (1000002 >= 10) at input 0: zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz...
par_parcat_args_stdin bug #51690: parcat: read args from stdin
par_parcat_args_stdin OK1
par_parcat_args_stdin OK2
par_parcat_rm bug #51691: parcat --rm remove fifo when opened
par_parcat_rm OK1
par_parcat_rm OK file removed
par_perlexpr_repl ### {= and =} in different groups separated by space
par_perlexpr_repl b
par_perlexpr_repl b
par_perlexpr_repl bb
par_perlexpr_repl bb
par_perlexpr_repl b{= b
par_perlexpr_repl b{=b
par_perlexpr_repl b {=a
par_perlexpr_repl {=a
par_perlexpr_repl {= a
par_perlexpr_repl {= a =}
par_perlexpr_repl ### bug #45842: Do not evaluate {= =} twice
par_perlexpr_repl 1
par_perlexpr_repl 2
par_perlexpr_repl 3
par_perlexpr_repl 4
par_perlexpr_repl 1
par_perlexpr_repl 2
par_perlexpr_repl 3
par_perlexpr_repl 4
par_perlexpr_repl 1 2
par_perlexpr_repl 3 4
par_perlexpr_repl 5 6
par_perlexpr_repl 7 8
par_perlexpr_repl 9 10
par_perlexpr_repl 11 12
par_perlexpr_repl 13 14
par_perlexpr_repl 15 16
par_perlexpr_repl 17 18
par_perlexpr_repl 19 20
par_perlexpr_repl 21 22
par_perlexpr_repl 23 24
par_perlexpr_repl 1
par_perlexpr_repl 2
par_perlexpr_repl 3
par_perlexpr_repl 4
par_perlexpr_repl 5
par_perlexpr_repl 6
par_perlexpr_repl 7
par_perlexpr_repl 8
par_perlexpr_repl 9
par_perlexpr_repl 10
par_perlexpr_repl 11
par_perlexpr_repl 12
par_perlexpr_repl ### bug #45939: {2} in {= =} fails
par_perlexpr_repl OK
par_perlexpr_repl OK-OK
par_perlexpr_with_newline Perl expression spanning 2 lines
par_pipe_N1_regexp bug #55131: --regexp --recstart hangs
par_pipe_N1_regexp These should give the same
par_pipe_N1_regexp JOB1
par_pipe_N1_regexp begin
par_pipe_N1_regexp end
par_pipe_N1_regexp END
par_pipe_N1_regexp JOB2
par_pipe_N1_regexp begin
par_pipe_N1_regexp aend
par_pipe_N1_regexp END
par_pipe_N1_regexp JOB3
par_pipe_N1_regexp begin
par_pipe_N1_regexp bend
par_pipe_N1_regexp END
par_pipe_N1_regexp JOB4
par_pipe_N1_regexp begin
par_pipe_N1_regexp cend
par_pipe_N1_regexp END
par_pipe_N1_regexp JOB1
par_pipe_N1_regexp begin
par_pipe_N1_regexp end
par_pipe_N1_regexp END
par_pipe_N1_regexp JOB2
par_pipe_N1_regexp begin
par_pipe_N1_regexp aend
par_pipe_N1_regexp END
par_pipe_N1_regexp JOB3
par_pipe_N1_regexp begin
par_pipe_N1_regexp bend
par_pipe_N1_regexp END
par_pipe_N1_regexp JOB4
par_pipe_N1_regexp begin
par_pipe_N1_regexp cend
par_pipe_N1_regexp END
par_pipe_no_command ### --pipe without command
par_pipe_no_command parallel: Error: --pipe/--pipepart must have a command to pipe into (e.g. 'cat').
par_pipe_recend bug #54328: --pipe --recend blocks
par_pipe_recend 00000000: 31 1
par_pipe_recend 00000000: 0a .
par_pipe_recend 00000000: 32 2
par_pipe_recend 00000000: 0a .
par_pipe_recend 00000000: 33 3
par_pipe_recend 00000000: 0a .
par_pipe_recend 00000000: 31 1
par_pipe_recend 00000000: 0a .
par_pipe_recend 00000000: 32 2
par_pipe_recend 00000000: 0a .
par_pipe_recend 00000000: 33 3
par_pipe_recend 00000000: 0a .
par_pipe_record_size_in_lines bug #34958: --pipe with record size measured in lines
par_pipe_record_size_in_lines 1
par_pipe_record_size_in_lines 2
par_pipe_record_size_in_lines 3
par_pipe_record_size_in_lines 4
par_pipe_record_size_in_lines 5
par_pipe_record_size_in_lines 6
par_pipe_record_size_in_lines 7
par_pipe_record_size_in_lines 8
par_pipe_record_size_in_lines bug 34958-1
par_pipe_record_size_in_lines 9
par_pipe_record_size_in_lines 10
par_pipe_record_size_in_lines bug 34958-1
par_pipe_record_size_in_lines 1
par_pipe_record_size_in_lines 2
par_pipe_record_size_in_lines 3
par_pipe_record_size_in_lines 4
par_pipe_record_size_in_lines 5
par_pipe_record_size_in_lines 6
par_pipe_record_size_in_lines 7
par_pipe_record_size_in_lines 8
par_pipe_record_size_in_lines bug 34958-2
par_pipe_record_size_in_lines 9
par_pipe_record_size_in_lines 10
par_pipe_record_size_in_lines bug 34958-2
par_pipe_tag_v pipe with --tag -v
par_pipe_tag_v foo cat
par_pipe_tag_v foo 1
par_pipe_tag_v foo 2
par_pipe_tag_v foo 3
par_pipe_tag_v foo /tmp/tmpfile.par
par_pipe_to_func ### bug #45998: --pipe to function broken
par_pipe_to_func 1
par_pipe_to_func pipefunc OK
par_pipe_to_func 1
par_pipe_to_func pipefunc and more OK
par_pipe_to_func and more OK
par_pipepart_block_bigger_2G ### Test that --pipepart can have blocks > 2GB
par_pipepart_block_bigger_2G 1 1 4
par_pipepart_header ### bug #44614: --pipepart --header off by one
par_pipepart_header foo
par_pipepart_header 1
par_pipepart_header 2
par_pipepart_header 3
par_pipepart_header foo
par_pipepart_header 4
par_pipepart_header 5
par_pipepart_header 6
par_pipepart_header foo
par_pipepart_header 7
par_pipepart_header 8
par_pipepart_header 9
par_pipepart_header foo
par_pipepart_header 10
par_pipepart_header foo
par_pipepart_header 1
par_pipepart_header 2
par_pipepart_header 3
par_pipepart_header foo
par_pipepart_header 4
par_pipepart_header 5
par_pipepart_header 6
par_pipepart_header 7
par_pipepart_header 8
par_pipepart_header 9
par_pipepart_header 10
par_pipepart_recend_recstart bug #52343: --recend/--recstart does wrong thing with --pipepart
par_pipepart_recend_recstart a
par_pipepart_recend_recstart 1
par_pipepart_recend_recstart 2
par_pipepart_recend_recstart 3
par_pipepart_recend_recstart 4
par_pipepart_recend_recstart 5
par_pipepart_recend_recstart a
par_pipepart_recend_recstart 6
par_pipepart_recend_recstart 7
par_pipepart_recend_recstart 8
par_pipepart_recend_recstart 9
par_pipepart_recend_recstart 10
par_pipepart_recend_recstart parallel: Warning: A record was longer than 1. Increasing to --blocksize 3.
par_pipepart_recend_recstart parallel: Warning: A record was longer than 3. Increasing to --blocksize 5.
par_pipepart_recend_recstart parallel: Warning: A record was longer than 5. Increasing to --blocksize 8.
par_pipepart_recend_recstart parallel: Warning: A record was longer than 8. Increasing to --blocksize 12.
par_pipepart_recend_recstart a
par_pipepart_recend_recstart 1
par_pipepart_recend_recstart 2
par_pipepart_recend_recstart 3
par_pipepart_recend_recstart 4
par_pipepart_recend_recstart 5
par_pipepart_recend_recstart a
par_pipepart_recend_recstart 6
par_pipepart_recend_recstart 7
par_pipepart_recend_recstart 8
par_pipepart_recend_recstart 9
par_pipepart_recend_recstart 10
par_pipepart_roundrobin ### bug #45769: --round-robin --pipepart gives wrong results
par_pipepart_roundrobin 2
par_python_children ### bug #49970: Python child process dies if --env is used
par_quote ### Test -q
par_quote a b
par_quote h i
par_quote ### Test -q {#}
par_quote 1
par_quote 2
par_quote 1
par_quote 2
par_quote {\#} a
par_quote {\#} b
par_read_from_stdin ### Test empty line as input
par_read_from_stdin empty input line
par_read_from_stdin ### Tests if (cat | sh) works
par_read_from_stdin a 1
par_read_from_stdin a 10
par_read_from_stdin a 11
par_read_from_stdin a 12
par_read_from_stdin a 13
par_read_from_stdin a 14
par_read_from_stdin a 15
par_read_from_stdin a 16
par_read_from_stdin a 17
par_read_from_stdin a 18
par_read_from_stdin a 19
par_read_from_stdin a 2
par_read_from_stdin a 20
par_read_from_stdin a 21
par_read_from_stdin a 22
par_read_from_stdin a 23
par_read_from_stdin a 24
par_read_from_stdin a 25
par_read_from_stdin a 3
par_read_from_stdin a 4
par_read_from_stdin a 5
par_read_from_stdin a 6
par_read_from_stdin a 7
par_read_from_stdin a 8
par_read_from_stdin a 9
par_read_from_stdin b 1
par_read_from_stdin b 10
par_read_from_stdin b 11
par_read_from_stdin b 12
par_read_from_stdin b 13
par_read_from_stdin b 14
par_read_from_stdin b 15
par_read_from_stdin b 16
par_read_from_stdin b 17
par_read_from_stdin b 18
par_read_from_stdin b 19
par_read_from_stdin b 2
par_read_from_stdin b 20
par_read_from_stdin b 21
par_read_from_stdin b 22
par_read_from_stdin b 23
par_read_from_stdin b 24
par_read_from_stdin b 25
par_read_from_stdin b 3
par_read_from_stdin b 4
par_read_from_stdin b 5
par_read_from_stdin b 6
par_read_from_stdin b 7
par_read_from_stdin b 8
par_read_from_stdin b 9
par_read_from_stdin ### Test if xargs-mode works
par_read_from_stdin a 1
par_read_from_stdin a 10
par_read_from_stdin a 11
par_read_from_stdin a 12
par_read_from_stdin a 13
par_read_from_stdin a 14
par_read_from_stdin a 15
par_read_from_stdin a 16
par_read_from_stdin a 17
par_read_from_stdin a 18
par_read_from_stdin a 19
par_read_from_stdin a 2
par_read_from_stdin a 20
par_read_from_stdin a 21
par_read_from_stdin a 22
par_read_from_stdin a 23
par_read_from_stdin a 24
par_read_from_stdin a 25
par_read_from_stdin a 3
par_read_from_stdin a 4
par_read_from_stdin a 5
par_read_from_stdin a 6
par_read_from_stdin a 7
par_read_from_stdin a 8
par_read_from_stdin a 9
par_read_from_stdin b 1
par_read_from_stdin b 10
par_read_from_stdin b 11
par_read_from_stdin b 12
par_read_from_stdin b 13
par_read_from_stdin b 14
par_read_from_stdin b 15
par_read_from_stdin b 16
par_read_from_stdin b 17
par_read_from_stdin b 18
par_read_from_stdin b 19
par_read_from_stdin b 2
par_read_from_stdin b 20
par_read_from_stdin b 21
par_read_from_stdin b 22
par_read_from_stdin b 23
par_read_from_stdin b 24
par_read_from_stdin b 25
par_read_from_stdin b 3
par_read_from_stdin b 4
par_read_from_stdin b 5
par_read_from_stdin b 6
par_read_from_stdin b 7
par_read_from_stdin b 8
par_read_from_stdin b 9
par_results ### --results test.csv
par_results a
par_results b
par_results c
par_retries_replacement_string 11
par_retries_replacement_string 22
par_retries_replacement_string 22
par_retries_replacement_string 33
par_retries_replacement_string 33
par_retries_replacement_string 33
par_sem_quote ### sem --quote should not add empty argument
par_sem_quote echo
par_sem_quote
par_shard ### --shard
par_shard OK
par_shard OK
par_shard OK
par_shard OK
par_shard OK
par_shard 10 1
par_shard 10 2
par_shard 10 3
par_shard 10 4
par_shard 10 5
par_shard 10 6
par_shard 10 7
par_shard 10 8
par_shard 10 9
par_shard 9 0
par_shard 9 1
par_shard 9 2
par_shard 9 3
par_shard 9 4
par_shard 9 5
par_shard 9 6
par_shard 9 7
par_shard 9 8
par_shard 9 9
par_shard *** broken
par_shard parallel: Error: --tee requres --jobs to be higher. Try --jobs 0.
par_shard parallel: Error: --tee requres --jobs to be higher. Try --jobs 0.
par_slow_pipe_regexp ### bug #53718: --pipe --regexp -N blocks
par_slow_pipe_regexp This should take a few ms, but took more than 2 hours
par_slow_pipe_regexp 980 981 5881
par_slow_pipe_regexp 25021 25021 150125
par_slow_pipe_regexp ### These should give same output
par_slow_pipe_regexp 6e72d7f86f6a423b9a7fa97630587815 -
par_slow_pipe_regexp 6e72d7f86f6a423b9a7fa97630587815 -
par_space_envvar ### bug: --gnu was ignored if env var started with space: PARALLEL=' --gnu'
par_space_envvar echo 'space in envvar OK'
par_space_envvar space in envvar OK
par_tagstring_pipe bug #50228: --pipe --tagstring broken
par_tagstring_pipe 1 1000 1000 3893
par_tagstring_pipe 2 1000 1000 5000
par_tagstring_pipe 3 1000 1000 5000
par_tee 1 a 1
par_tee 1 a 1000000 1000000 6888896
par_tee 1 b 2
par_tee 1 b 1000000 1000000 6888896
par_tee 2 a 3
par_tee 2 a 1000000 1000000 6888896
par_tee 2 b 4
par_tee 2 b 1000000 1000000 6888896
par_tee 3 a 5
par_tee 3 a 1000000 1000000 6888896
par_tee 3 b 6
par_tee 3 b 1000000 1000000 6888896
par_tee 4 a 7
par_tee 4 a 1000000 1000000 6888896
par_tee 4 b 8
par_tee 4 b 1000000 1000000 6888896
par_tee 5 a 9
par_tee 5 a 1000000 1000000 6888896
par_tee 5 b 10
par_tee 5 b 1000000 1000000 6888896
par_tee 1 -l 181902
par_tee 1 -c 1228633
par_tee 2 -l 181902
par_tee 2 -c 1228633
par_tee 3 -l 122854
par_tee 3 -c 815297
par_tee 4 -l 122853
par_tee 4 -c 815290
par_tee 5 -l 122853
par_tee 5 -c 815290
par_tee_too_many_args ### Fail if there are more arguments than --jobs
par_tee_too_many_args 1 1
par_tee_too_many_args 1 10
par_tee_too_many_args 1 11
par_tee_too_many_args 2 2
par_tee_too_many_args 3 3
par_tee_too_many_args 4 4
par_tee_too_many_args parallel: Error: --tee requres --jobs to be higher. Try --jobs 0.
par_test_L_context_replace ### Test -N context replace
par_test_L_context_replace a1b a2b a3b a4b a5b a6b a7b a8b a9b a10b
par_test_L_context_replace a11b a12b a13b a14b a15b a16b a17b a18b a19b
par_test_L_context_replace ### Test -L context replace
par_test_L_context_replace a1b a2b a3b a4b a5b a6b a7b a8b a9b a10b
par_test_L_context_replace a11b a12b a13b a14b a15b a16b a17b a18b a19b
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_test_r_with_pipe ### Test of -r with --pipe - the first should give an empty line. The second should not.
par_test_r_with_pipe 1
par_test_r_with_pipe 0
par_test_tty ### Test --tty
par_test_tty /dev/tty
par_test_tty /dev/tty
par_test_tty /dev/tty
par_test_tty /dev/tty
par_test_tty /dev/tty
par_testquote ash "#&/
par_testquote ash ()*=?'
par_testquote bash "#&/
par_testquote bash ()*=?'
par_testquote csh "#&/
par_testquote csh ()*=?'
par_testquote dash "#&/
par_testquote dash ()*=?'
par_testquote fdsh "#&/
par_testquote fdsh ()*=?'
par_testquote fish "#&/
par_testquote fish ()*=?'
par_testquote fizsh "#&/
par_testquote fizsh ()*=?'
par_testquote ksh "#&/
par_testquote ksh ()*=?'
par_testquote ksh93 "#&/
par_testquote ksh93 ()*=?'
par_testquote mksh "#&/
par_testquote mksh ()*=?'
par_testquote posh "#&/
par_testquote posh ()*=?'
par_testquote rbash "#&/
par_testquote rbash ()*=?'
par_testquote rc "#&/
par_testquote rc ()*=?'
par_testquote rzsh "#&/
par_testquote rzsh ()*=?'
par_testquote sash "#&/
par_testquote sash ()*=?'
par_testquote sh "#&/
par_testquote sh ()*=?'
par_testquote static-sh "#&/
par_testquote static-sh ()*=?'
par_testquote tcsh "#&/
par_testquote tcsh ()*=?'
par_testquote yash "#&/
par_testquote yash ()*=?'
par_testquote zsh "#&/
par_testquote zsh ()*=?'
par_total_from_joblog bug #47086: [PATCH] Initialize total_completed from joblog
par_total_from_joblog 0
par_total_from_joblog 1
par_total_from_joblog 2
par_total_from_joblog 3
par_total_from_joblog parallel: This job failed:
par_total_from_joblog echo 3;exit 1
par_total_from_joblog 4
par_total_from_joblog 5
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_tricolonplus ### bug #48745: :::+ bug
par_tricolonplus 11 1 21 a aa
par_tricolonplus 11 1 21 b bb
par_tricolonplus 11 1 21 c cc
par_tricolonplus 22 2 22 a aa
par_tricolonplus 22 2 22 b bb
par_tricolonplus 22 2 22 c cc
par_tricolonplus 33 3 23 a aa
par_tricolonplus 33 3 23 b bb
par_tricolonplus 33 3 23 c cc
par_tricolonplus 1 21 a aa
par_tricolonplus 1 21 a bb
par_tricolonplus 1 21 a cc
par_tricolonplus 1 22 b aa
par_tricolonplus 1 22 b bb
par_tricolonplus 1 22 b cc
par_tricolonplus 1 23 c aa
par_tricolonplus 1 23 c bb
par_tricolonplus 1 23 c cc
par_tricolonplus 2 21 a aa
par_tricolonplus 2 21 a bb
par_tricolonplus 2 21 a cc
par_tricolonplus 2 22 b aa
par_tricolonplus 2 22 b bb
par_tricolonplus 2 22 b cc
par_tricolonplus 2 23 c aa
par_tricolonplus 2 23 c bb
par_tricolonplus 2 23 c cc
par_tricolonplus 3 21 a aa
par_tricolonplus 3 21 a bb
par_tricolonplus 3 21 a cc
par_tricolonplus 3 22 b aa
par_tricolonplus 3 22 b bb
par_tricolonplus 3 22 b cc
par_tricolonplus 3 23 c aa
par_tricolonplus 3 23 c bb
par_tricolonplus 3 23 c cc
par_tricolonplus 1 21 a aa
par_tricolonplus 1 21 a bb
par_tricolonplus 1 21 a cc
par_tricolonplus 1 22 b aa
par_tricolonplus 1 22 b bb
par_tricolonplus 1 22 b cc
par_tricolonplus 1 23 c aa
par_tricolonplus 1 23 c bb
par_tricolonplus 1 23 c cc
par_tricolonplus 2 21 a aa
par_tricolonplus 2 21 a bb
par_tricolonplus 2 21 a cc
par_tricolonplus 2 22 b aa
par_tricolonplus 2 22 b bb
par_tricolonplus 2 22 b cc
par_tricolonplus 2 23 c aa
par_tricolonplus 2 23 c bb
par_tricolonplus 2 23 c cc
par_tricolonplus 3 21 a aa
par_tricolonplus 3 21 a bb
par_tricolonplus 3 21 a cc
par_tricolonplus 3 22 b aa
par_tricolonplus 3 22 b bb
par_tricolonplus 3 22 b cc
par_tricolonplus 3 23 c aa
par_tricolonplus 3 23 c bb
par_tricolonplus 3 23 c cc
par_wd_3dot_local bug #45993: --wd ... should also work when run locally
par_wd_3dot_local parallel: Error: Cannot change into non-executable dir /bi: No such file or directory
par_wd_3dot_local /bin
par_wd_3dot_local ~/privat/parallel/testsuite
par_wd_3dot_local OK
par_wd_3dot_local /
par_wd_3dot_local ~/privat/parallel/testsuite
par_wd_3dot_local OK
par_wd_3dot_local /tmp
par_wd_3dot_local ~/privat/parallel/testsuite
par_wd_3dot_local OK
par_wd_3dot_local ~/.parallel/tmp/hostname-0-0
par_wd_3dot_local ~/privat/parallel/testsuite
par_wd_3dot_local OK
par_wd_3dot_local ~/privat/parallel/testsuite
par_wd_3dot_local ~/privat/parallel/testsuite
par_wd_3dot_local OK
par_wd_dotdotdot ### parallel --wd ... should clean up
par_wd_dotdotdot 1 == 1
par_wd_dotdotdot ### $OLDPWD should be the dir in which parallel starts
par_wd_dotdotdot /tmp foo
par_xapply ### Test bug #43284: {%} and {#} with --xapply
par_xapply a 1 1 b
par_xapply 1
par_xapply ### bug #47501: --xapply for some input sources
par_xapply a aa A AA
par_xapply a aa B BB
par_xapply b bb A AA
par_xapply b bb B BB
par_xapply c cc A AA
par_xapply c cc B BB
par_xargs_compat xargs compatibility
par_xargs_compat ### Test -L -l and --max-lines
par_xargs_compat a_b
par_xargs_compat c
par_xargs_compat a_b c
par_xargs_compat a_b c
par_xargs_compat ### xargs -L1 echo
par_xargs_compat a_b
par_xargs_compat c
par_xargs_compat a_b
par_xargs_compat c
par_xargs_compat a_b
par_xargs_compat c
par_xargs_compat Lines ending in space should continue on next line
par_xargs_compat ### xargs -L1 echo
par_xargs_compat a_b c
par_xargs_compat d
par_xargs_compat a_b c
par_xargs_compat d
par_xargs_compat a_b c
par_xargs_compat d
par_xargs_compat ### xargs -L2 echo
par_xargs_compat a_b c d
par_xargs_compat e
par_xargs_compat a_b c d
par_xargs_compat e
par_xargs_compat a_b c d
par_xargs_compat e
par_xargs_compat ### xargs -l echo
par_xargs_compat a_b c
par_xargs_compat d
par_xargs_compat e
par_xargs_compat a_b c
par_xargs_compat d
par_xargs_compat e
par_xargs_compat a_b c
par_xargs_compat d
par_xargs_compat e
par_xargs_compat ### xargs -l2 echo
par_xargs_compat a_b c d
par_xargs_compat e
par_xargs_compat a_b c d
par_xargs_compat e
par_xargs_compat a_b c d
par_xargs_compat e
par_xargs_compat ### xargs -l1 echo
par_xargs_compat a_b c
par_xargs_compat d
par_xargs_compat e
par_xargs_compat a_b c
par_xargs_compat d
par_xargs_compat e
par_xargs_compat a_b c
par_xargs_compat d
par_xargs_compat e
par_xargs_compat ### xargs --max-lines=2 echo
par_xargs_compat a_b c d
par_xargs_compat e
par_xargs_compat a_b c d
par_xargs_compat e
par_xargs_compat a_b c d
par_xargs_compat e
par_xargs_compat ### xargs --max-lines echo
par_xargs_compat a_b c
par_xargs_compat d
par_xargs_compat e
par_xargs_compat a_b c
par_xargs_compat d
par_xargs_compat e
par_xargs_compat a_b c
par_xargs_compat d
par_xargs_compat e
par_xargs_compat ### test too long args
par_xargs_compat parallel: Error: Command line too long (1000005 >= 131049) at input 0: zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz...
par_xargs_compat xargs: argument line too long
par_xargs_compat 1 2
par_xargs_compat 3 4
par_xargs_compat 5 6
par_xargs_compat 7 8
par_xargs_compat 9 10
par_xargs_compat parallel: Error: Command line too long (1000007 >= 10) at input 0: zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz...
par_xargs_compat 1 2
par_xargs_compat 3 4
par_xargs_compat 5 6
par_xargs_compat 7 8
par_xargs_compat 9 10
par_xargs_compat xargs: argument line too long
par_xargs_compat 1 2
par_xargs_compat 3 4
par_xargs_compat 5 6
par_xargs_compat 7 8
par_xargs_compat 9 10
par_xargs_compat parallel: Error: Command line too long (1000007 >= 10) at input 0: zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz...
par_xargs_compat ### Test -x
par_xargs_compat 1 2
par_xargs_compat 3 4
par_xargs_compat 5 6
par_xargs_compat 7 8
par_xargs_compat 9 10
par_xargs_compat parallel: Error: Command line too long (10 >= 10) at input 0: 12345
par_xargs_compat 1 2
par_xargs_compat 3 4
par_xargs_compat 5 6
par_xargs_compat 7 8
par_xargs_compat 9 10
par_xargs_compat parallel: Error: Command line too long (10 >= 10) at input 0: 12345
par_xargs_compat 1 2
par_xargs_compat 3 4
par_xargs_compat 5 6
par_xargs_compat 7 8
par_xargs_compat xargs: argument line too long
par_xargs_compat 1 2
par_xargs_compat 12
par_xargs_compat 1234
par_xargs_compat 13
par_xargs_compat 14
par_xargs_compat 15
par_xargs_compat 3 4
par_xargs_compat 5 6
par_xargs_compat 7 8
par_xargs_compat 9 10
par_xargs_compat 1 2
par_xargs_compat 12
par_xargs_compat 1234
par_xargs_compat 13
par_xargs_compat 14
par_xargs_compat 15
par_xargs_compat 3 4
par_xargs_compat 5 6
par_xargs_compat 7 8
par_xargs_compat 9 10
par_xargs_compat 1 2
par_xargs_compat 12
par_xargs_compat 1234
par_xargs_compat 13
par_xargs_compat 14
par_xargs_compat 15
par_xargs_compat 3 4
par_xargs_compat 5 6
par_xargs_compat 7 8
par_xargs_compat 9 10