echo '### Test of xargs -m command lines > 130k'; seq 1 60000 | parallel -m -j1 echo a{}b{}c | tee >(wc >/tmp/awc$$) >(sort | md5sum) >/tmp/a$$; wait; CHAR=$(cat /tmp/a$$ | wc -c); LINES=$(cat /tmp/a$$ | wc -l); echo "Chars per line:" $(echo "$CHAR/$LINES" | bc); cat /tmp/awc$$; rm /tmp/a$$ /tmp/awc$$ ### Test of xargs -m command lines > 130k 31d9274be5fdc2de59487cb05ba57776 - Chars per line: 116300 6 119994 697800 echo '### Test of xargs -X command lines > 130k'; seq 1 60000 | parallel -X -j1 echo a{}b{}c | tee >(wc >/tmp/bwc$$) >(sort | (sleep 1; md5sum)) >/tmp/b$$; wait; CHAR=$(cat /tmp/b$$ | wc -c); LINES=$(cat /tmp/b$$ | wc -l); echo "Chars per line:" $(echo "$CHAR/$LINES" | bc); cat /tmp/bwc$$; rm /tmp/b$$ /tmp/bwc$$ ### Test of xargs -X command lines > 130k 22074f9acada52462defb18ba912d744 - Chars per line: 116826 7 60000 817788 echo '### Test of xargs -m command lines > 130k'; seq 1 60000 | parallel -k -j1 -m echo | md5sum ### Test of xargs -m command lines > 130k b35d8e49be8d94899b719c40d3f1f4bb - echo '### This causes problems if we kill child processes'; seq 2 40 | parallel -j 0 seq 1 10 | sort | md5sum ### This causes problems if we kill child processes 437c0d47a99b9a7c5bcb1d132f94c2e6 - echo '### This causes problems if we kill child processes (II)'; seq 1 40 | parallel -j 0 seq 1 10 '| parallel -j 3 echo' | sort | md5sum ### This causes problems if we kill child processes (II) d7fb96d6a56d4347bc24930a395c431a - echo '### Test -m'; (echo foo;echo bar) | parallel -j1 -m echo 1{}2{}3 A{}B{}C ### Test -m 1foo bar2foo bar3 Afoo barBfoo barC echo '### Test -X'; (echo foo;echo bar) | parallel -j1 -X echo 1{}2{}3 A{}B{}C ### Test -X 1foo2foo3 1bar2bar3 AfooBfooC AbarBbarC echo '### Bug before 2009-08-26 causing regexp compile error or infinite loop'; echo a | parallel -qX echo "'"{}"' " ### Bug before 2009-08-26 causing regexp compile error or infinite loop 'a' echo '### Bug before 2009-08-26 causing regexp compile error or infinite loop (II)'; echo a | parallel -qX echo "'{}'" ### Bug before 2009-08-26 causing regexp compile error or infinite loop (II) 'a' echo '### bug #42041: Implement $PARALLEL_JOBSLOT' ### bug #42041: Implement $PARALLEL_JOBSLOT parallel -k --slotreplace // -j2 sleep 1\;echo // ::: {1..4} | sort 1 1 2 2 parallel -k -j2 sleep 1\;echo {%} ::: {1..4} | sort 1 1 2 2 echo '### bug #42363: --pipepart and --fifo/--cat does not work' ### bug #42363: --pipepart and --fifo/--cat does not work seq 100 > /tmp/bug42363; parallel --pipepart --block 31 -a /tmp/bug42363 -k --fifo wc | perl -pe s:/tmp/.........pip:/tmp/XXXX: ; parallel --pipepart --block 31 -a /tmp/bug42363 -k --cat wc | perl -pe s:/tmp/.........pip:/tmp/XXXX: ; echo '### bug #42999: --pipepart with remote does not work' 13 14 32 /tmp/XXXX 11 11 33 /tmp/XXXX 11 11 33 /tmp/XXXX 11 11 33 /tmp/XXXX 11 11 33 /tmp/XXXX 11 11 33 /tmp/XXXX 11 11 33 /tmp/XXXX 11 11 33 /tmp/XXXX 10 9 29 /tmp/XXXX 13 14 32 /tmp/XXXX 11 11 33 /tmp/XXXX 11 11 33 /tmp/XXXX 11 11 33 /tmp/XXXX 11 11 33 /tmp/XXXX 11 11 33 /tmp/XXXX 11 11 33 /tmp/XXXX 11 11 33 /tmp/XXXX 10 9 29 /tmp/XXXX ### bug #42999: --pipepart with remote does not work seq 100 > /tmp/bug42999; chmod 600 /tmp/bug42999; parallel --pipepart --block 31 -a /tmp/bug42999 -k -S parallel@lo wc | perl -pe s:/tmp/.........pip:/tmp/XXXX: ; parallel --pipepart --block 31 -a /tmp/bug42999 -k --fifo -S parallel@lo wc | perl -pe s:/tmp/.........pip:/tmp/XXXX: ; parallel --pipepart --block 31 -a /tmp/bug42999 -k --cat -S parallel@lo wc | perl -pe s:/tmp/.........pip:/tmp/XXXX: ; echo '### bug #42055: --pipepart -a bigfile should not require sequential reading of bigfile' 13 14 32 11 11 33 11 11 33 11 11 33 11 11 33 11 11 33 11 11 33 11 11 33 10 9 29 13 14 32 /tmp/XXXX 11 11 33 /tmp/XXXX 11 11 33 /tmp/XXXX 11 11 33 /tmp/XXXX 11 11 33 /tmp/XXXX 11 11 33 /tmp/XXXX 11 11 33 /tmp/XXXX 11 11 33 /tmp/XXXX 10 9 29 /tmp/XXXX 13 14 32 /tmp/XXXX 11 11 33 /tmp/XXXX 11 11 33 /tmp/XXXX 11 11 33 /tmp/XXXX 11 11 33 /tmp/XXXX 11 11 33 /tmp/XXXX 11 11 33 /tmp/XXXX 11 11 33 /tmp/XXXX 10 9 29 /tmp/XXXX ### bug #42055: --pipepart -a bigfile should not require sequential reading of bigfile parallel --pipepart -a /etc/passwd -L 1 should not be run parallel: Error: --pipepart is incompatible with --max-replace-args, --max-lines, and -L. parallel --pipepart -a /etc/passwd -N 1 should not be run parallel: Error: --pipepart is incompatible with --max-replace-args, --max-lines, and -L. parallel --pipepart -a /etc/passwd -l 1 should not be run parallel: Error: --pipepart is incompatible with --max-replace-args, --max-lines, and -L. echo '### bug #42893: --block should not cause decimals in cat_partial' ### bug #42893: --block should not cause decimals in cat_partial seq 100000 >/tmp/parallel-decimal; parallel --dry-run -kvv --pipepart --block 0.12345M -a /tmp/parallel-decimal true; rm /tmp/parallel-decimal 32768 ? 32768 : $left))){ $left -= $read; syswrite(STDOUT,$buf); } }' 0 0 0 129449|(true) 32768 ? 32768 : $left))){ $left -= $read; syswrite(STDOUT,$buf); } }' 0 0 129449 129450|(true) 32768 ? 32768 : $left))){ $left -= $read; syswrite(STDOUT,$buf); } }' 0 0 258899 129450|(true) 32768 ? 32768 : $left))){ $left -= $read; syswrite(STDOUT,$buf); } }' 0 0 388349 129450|(true) 32768 ? 32768 : $left))){ $left -= $read; syswrite(STDOUT,$buf); } }' 0 0 517799 71096|(true) echo '### bug #42902: profiles containing arguments with space' ### bug #42902: profiles containing arguments with space echo "--rpl 'FULLPATH chomp(\$_=\"/bin/bash=\".\`readlink -f \$_\`);' " > ~/.parallel/FULLPATH; parallel -JFULLPATH echo FULLPATH ::: $0 /bin/bash=/bin/bash PARALLEL="--rpl 'FULLPATH chomp(\$_=\"/bin/bash=\".\`readlink -f \$_\`);' -v" parallel echo FULLPATH ::: $0 echo /bin/bash=/bin/bash /bin/bash=/bin/bash PARALLEL="--rpl 'FULLPATH chomp(\$_=\"/bin/bash=\".\`readlink -f \$_\`);' perl -e \'print \\\"@ARGV\\\n\\\"\' " parallel With script in \\\$PARALLEL FULLPATH ::: . With script in $PARALLEL /bin/bash=/home/tange/privat/parallel/testsuite echo '### bug #42892: parallel -a nonexiting --pipepart' ### bug #42892: parallel -a nonexiting --pipepart parallel --pipepart -a nonexisting wc parallel: Error: Cannot open input file `nonexisting': No such file or directory. echo '### bug #42913: Dont use $SHELL but the shell currently running' ### bug #42913: Dont use $SHELL but the shell currently running echo '## Unknown shell => $SHELL (bash)' ## Unknown shell => $SHELL (bash) parallel -j1 "cp \`which {}\` /tmp/SHELL; /tmp/SHELL -c 'parallel -Dinit echo ::: 1' | grep which;" ::: ash bash csh dash fdsh fish fizsh ksh ksh93 mksh pdksh posh rbash rush rzsh sash sh static-sh tcsh yash zsh shell? /bin/bash -c cp `which ash` /tmp/SHELL; /tmp/SHELL -c 'parallel -Dinit echo ::: 1' | grep which; which bash => shell path /bin/bash shell? /bin/bash -c cp `which bash` /tmp/SHELL; /tmp/SHELL -c 'parallel -Dinit echo ::: 1' | grep which; which bash => shell path /bin/bash shell? /bin/bash -c cp `which csh` /tmp/SHELL; /tmp/SHELL -c 'parallel -Dinit echo ::: 1' | grep which; which bash => shell path /bin/bash shell? /bin/bash -c cp `which dash` /tmp/SHELL; /tmp/SHELL -c 'parallel -Dinit echo ::: 1' | grep which; which bash => shell path /bin/bash shell? /bin/bash -c cp `which fish` /tmp/SHELL; /tmp/SHELL -c 'parallel -Dinit echo ::: 1' | grep which; which bash => shell path /bin/bash which zsh => shell path /usr/bin/zsh shell? /bin/bash -c cp `which ksh` /tmp/SHELL; /tmp/SHELL -c 'parallel -Dinit echo ::: 1' | grep which; which bash => shell path /bin/bash shell? /bin/bash -c cp `which ksh93` /tmp/SHELL; /tmp/SHELL -c 'parallel -Dinit echo ::: 1' | grep which; which bash => shell path /bin/bash shell? /bin/bash -c cp `which mksh` /tmp/SHELL; /tmp/SHELL -c 'parallel -Dinit echo ::: 1' | grep which; which bash => shell path /bin/bash shell? /bin/bash -c cp `which pdksh` /tmp/SHELL; /tmp/SHELL -c 'parallel -Dinit echo ::: 1' | grep which; which bash => shell path /bin/bash shell? /bin/bash -c cp `which posh` /tmp/SHELL; /tmp/SHELL -c 'parallel -Dinit echo ::: 1' | grep which; which bash => shell path /bin/bash shell? /bin/bash -c cp `which rbash` /tmp/SHELL; /tmp/SHELL -c 'parallel -Dinit echo ::: 1' | grep which; which bash => shell path /bin/bash shell? /bin/bash -c cp `which rzsh` /tmp/SHELL; /tmp/SHELL -c 'parallel -Dinit echo ::: 1' | grep which; which bash => shell path /bin/bash shell? /bin/bash -c cp `which sash` /tmp/SHELL; /tmp/SHELL -c 'parallel -Dinit echo ::: 1' | grep which; which bash => shell path /bin/bash shell? /bin/bash -c cp `which sh` /tmp/SHELL; /tmp/SHELL -c 'parallel -Dinit echo ::: 1' | grep which; which bash => shell path /bin/bash shell? /bin/bash -c cp `which tcsh` /tmp/SHELL; /tmp/SHELL -c 'parallel -Dinit echo ::: 1' | grep which; which bash => shell path /bin/bash shell? /bin/bash -c cp `which yash` /tmp/SHELL; /tmp/SHELL -c 'parallel -Dinit echo ::: 1' | grep which; which bash => shell path /bin/bash shell? /bin/bash -c cp `which zsh` /tmp/SHELL; /tmp/SHELL -c 'parallel -Dinit echo ::: 1' | grep which; which bash => shell path /bin/bash MANPATH: Undefined variable. /tmp/SHELL: -c: bad option(s) Local configuration error occurred. Contact the systems administrator for further assistance. SHELL: applet not found MANPATH: Undefined variable. echo '## Known shells -c' ## Known shells -c parallel -k "\`which {}\` -c 'parallel -Dinit echo ::: 1' | grep which;" ::: ash bash csh dash fdsh fish fizsh ksh ksh93 mksh pdksh posh rbash rush rzsh sash sh static-sh tcsh yash zsh which ash => shell path /bin/ash shell? /bin/bash -c `which bash` -c 'parallel -Dinit echo ::: 1' | grep which; which bash => shell path /bin/bash which csh => shell path /bin/csh which dash => shell path /bin/dash which fdsh => shell path /usr/bin/fdsh which fish => shell path /usr/bin/fish which zsh => shell path /usr/bin/zsh shell? /bin/bash -c `which ksh` -c 'parallel -Dinit echo ::: 1' | grep which; which bash => shell path /bin/bash shell? /bin/bash -c `which ksh93` -c 'parallel -Dinit echo ::: 1' | grep which; which bash => shell path /bin/bash shell? /bin/bash -c `which mksh` -c 'parallel -Dinit echo ::: 1' | grep which; which bash => shell path /bin/bash shell? /bin/bash -c `which pdksh` -c 'parallel -Dinit echo ::: 1' | grep which; which bash => shell path /bin/bash which posh => shell path /bin/posh shell? /bin/bash -c `which rbash` -c 'parallel -Dinit echo ::: 1' | grep which; which bash => shell path /bin/bash shell? /bin/bash -c `which rzsh` -c 'parallel -Dinit echo ::: 1' | grep which; which bash => shell path /bin/bash which sash => shell path /bin/sash which sh => shell path /bin/sh which static-sh => shell path /bin/static-sh which tcsh => shell path /usr/bin/tcsh shell? /bin/bash -c `which yash` -c 'parallel -Dinit echo ::: 1' | grep which; which bash => shell path /bin/bash shell? /bin/bash -c `which zsh` -c 'parallel -Dinit echo ::: 1' | grep which; which bash => shell path /bin/bash MANPATH: Undefined variable. MANPATH: Undefined variable. Local configuration error occurred. Contact the systems administrator for further assistance. MANPATH: Undefined variable. MANPATH: Undefined variable. echo '## Known shells |' ## Known shells | parallel -k "echo 'parallel -Dinit echo ::: 1' | \`which {}\` | grep which;" ::: ash bash csh dash fdsh fish fizsh ksh ksh93 mksh pdksh posh rbash rush rzsh sash sh static-sh tcsh yash zsh which ash => shell path /bin/ash which bash => shell path /bin/bash which csh => shell path /bin/csh which dash => shell path /bin/dash which fdsh => shell path /usr/bin/fdsh which fish => shell path /usr/bin/fish which zsh => shell path /usr/bin/zsh which ksh => shell path /usr/bin/ksh which ksh93 => shell path /bin/ksh93 which mksh => shell path /bin/mksh which pdksh => shell path /bin/pdksh which posh => shell path /bin/posh which rbash => shell path /bin/rbash which rzsh => shell path /bin/rzsh which sash => shell path /bin/sash which sh => shell path /bin/sh which static-sh => shell path /bin/static-sh which tcsh => shell path /usr/bin/tcsh which yash => shell path /usr/bin/yash which zsh => shell path /usr/bin/zsh MANPATH: Undefined variable. MANPATH: Undefined variable. Local configuration error occurred. Contact the systems administrator for further assistance. MANPATH: Undefined variable. MANPATH: Undefined variable. echo '## Started directly from perl' ## Started directly from perl perl -e 'system(qw(parallel -Dinit echo ::: 1))' | grep which shell? /bin/bash -c perl -e 'system(qw(parallel -Dinit echo ::: 1))' | grep which which bash => shell path /bin/bash