diff --git a/testsuite/tests-to-run/parallel-local-3s.sh b/testsuite/tests-to-run/parallel-local-3s.sh index 8831ca3c..c389a67d 100644 --- a/testsuite/tests-to-run/parallel-local-3s.sh +++ b/testsuite/tests-to-run/parallel-local-3s.sh @@ -27,7 +27,7 @@ echo '### Are children killed if GNU Parallel receives TERM twice? There should pstree $$; kill -TERM $T; sleep 1; - pstree $$; + pstree $$; echo '**' @@ -39,6 +39,20 @@ echo '### Are children killed if GNU Parallel receives INT twice? There should b pstree $$; kill -INT $T; sleep 1; - pstree $$; + pstree $$; + +echo '**' + +echo '### Do children receive --termseq signals' + + show_signals() { + perl -e 'for(keys %SIG) { $SIG{$_} = eval "sub { print STDERR \"Got $_\\n\"; }";} while(1){sleep 1}'; + }; + export -f show_signals; + echo | stdout parallel --termseq TERM,200,TERM,100,TERM,50,KILL,25 -u --timeout 1 show_signals; + echo | stdout parallel --termseq INT,200,TERM,100,KILL,25 -u --timeout 1 show_signals; + sleep 3; + + EOF diff --git a/testsuite/tests-to-run/parallel-local-ssh4.sh b/testsuite/tests-to-run/parallel-local-ssh4.sh index c4cdf0c5..44f20479 100644 --- a/testsuite/tests-to-run/parallel-local-ssh4.sh +++ b/testsuite/tests-to-run/parallel-local-ssh4.sh @@ -150,7 +150,7 @@ echo "$funky" | parallel --shellquote echo echo "### Zsh environment" -stdout ssh -q zsh@lo <<'EOS' | egrep -v 'Welcome to |packages can be updated.' +stdout ssh -q zsh@lo <<'EOS' | egrep -v 'Welcome to |packages can be updated|security updates' myvar="myvar works" funky=$(perl -e 'print pack "c*", 1..255') myarray=('' array_val2 3 '' 5) @@ -186,7 +186,7 @@ EOS echo echo "### Ksh environment" -stdout ssh -q ksh@lo <<'EOS' | egrep -v 'Welcome to |packages can be updated.' +stdout ssh -q ksh@lo <<'EOS' | egrep -v 'Welcome to |packages can be updated|security updates' myvar="myvar works" funky=$(perl -e 'print pack "c*", 1..255') myarray=('' array_val2 3 '' 5) @@ -218,7 +218,7 @@ EOS echo echo "### Fish environment" -stdout ssh -q fish@lo <<'EOS' | egrep -v 'Welcome to |packages can be updated.' +stdout ssh -q fish@lo <<'EOS' | egrep -v 'Welcome to |packages can be updated|security updates' # All variables cannot reliably be exported # perl -e 'print map { "setenv///$_///$ENV{$_}\n"} grep !/^(PWD|SHLVL|PATH)$/, keys %ENV'| sh -c 'parallel --shellquote' | perl -pe 's:///: :g' |fish @@ -277,7 +277,7 @@ echo "### csh environment" # makealias_with_newline # perl -e '$/=undef;$_=<>;s/\n/\\\n/g;s/\047/\047\042\047\042\047/g;print' -stdout ssh -q csh@lo <<'EOS' | egrep -v 'Welcome to |packages can be updated.' +stdout ssh -q csh@lo <<'EOS' | egrep -v 'Welcome to |packages can be updated|security updates' set myvar = "myvar works" set funky = "`perl -e 'print pack q(c*), 1..255'`" set myarray = ('' 'array_val2' '3' '' '5') diff --git a/testsuite/tests-to-run/parallel-polarhome.sh b/testsuite/tests-to-run/parallel-polarhome.sh index a445e1cd..f15b545c 100755 --- a/testsuite/tests-to-run/parallel-polarhome.sh +++ b/testsuite/tests-to-run/parallel-polarhome.sh @@ -6,8 +6,8 @@ P_ALL="vax freebsd solaris openbsd netbsd debian alpha aix redhat hpux ultrix mi P_NOTWORKING="vax alpha openstep" P_NOTWORKING_YET="ultrix irix" -P_WORKING="freebsd solaris openbsd netbsd debian aix redhat hpux qnx openindiana suse solaris-x86 mandriva ubuntu scosysv unixware dragonfly centos miros raspbian macosx hpux-ia64 pidora" -P_TEMPORARILY_BROKEN="minix syllable tru64 hurd" +P_WORKING="freebsd solaris openbsd netbsd debian aix redhat hpux qnx openindiana suse solaris-x86 mandriva ubuntu scosysv unixware centos miros raspbian macosx hpux-ia64 pidora" +P_TEMPORARILY_BROKEN="minix syllable tru64 hurd dragonfly" P="$P_WORKING" POLAR=`parallel -k echo {}.polarhome.com ::: $P` diff --git a/testsuite/tests-to-run/parallel-tutorial.sh b/testsuite/tests-to-run/parallel-tutorial.sh index 224d32c7..3e852043 100644 --- a/testsuite/tests-to-run/parallel-tutorial.sh +++ b/testsuite/tests-to-run/parallel-tutorial.sh @@ -19,6 +19,8 @@ perl -ne '$/="\n\n"; /^Output/../^[^O]\S/ and next; /^ / and print;' ../../src/ s:ignored_vars:ignored_vars|sort:; # Remove \n to join all joblogs into the previous block s:cat /tmp/log\n:cat /tmp/log;:; + # Remove import (python code) + s:import.*::; # When parallelized: Sleep to make sure the abc-files are made /%head1/ and $_.="sleep .3\n\n"x10; ' | @@ -56,6 +58,7 @@ perl -ne '$/="\n\n"; /^Output/../^[^O]\S/ and next; /^ / and print;' ../../src/ s/.*command_[ABC].*\n//; # Due to multiple jobs "Second started" often ends up wrong s/Second started\n//; + s/The second finished\n//; # Due to multiple jobs "tried 2" often ends up wrong s/tried 2\n//; # Due to order is often mixed up diff --git a/testsuite/wanted-results/parallel-local-0.3s b/testsuite/wanted-results/parallel-local-0.3s index f206a4ac..8c5dcc6d 100644 --- a/testsuite/wanted-results/parallel-local-0.3s +++ b/testsuite/wanted-results/parallel-local-0.3s @@ -549,7 +549,7 @@ echo '{##} bug #45841: Replacement string for total no of jobs' 1 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 - parallel -k -X --plus echo {#} {##} ::: {1..15} + parallel -k -S 8/: -X --plus echo {#} {##} ::: {1..15} 1 15 15 2 15 15 3 15 15 diff --git a/testsuite/wanted-results/parallel-local-3s b/testsuite/wanted-results/parallel-local-3s index 1bb306fc..1c280e50 100644 --- a/testsuite/wanted-results/parallel-local-3s +++ b/testsuite/wanted-results/parallel-local-3s @@ -27,7 +27,16 @@ parallel: Waiting for these 1 jobs to finish. Send SIGTERM again to stop now. parallel: bash -c sleep\ 120\ \&\ pid\=\$\!\;\ wait\ \$pid 1 echo '### Are children killed if GNU Parallel receives INT twice? There should be no sleep at the end' ### Are children killed if GNU Parallel receives INT twice? There should be no sleep at the end - parallel -q bash -c 'sleep 120 & pid=$!; wait $pid' ::: 1 & T=$!; sleep 5; pstree $$; kill -INT $T; sleep 1; pstree $$; + parallel -q bash -c 'sleep 120 & pid=$!; wait $pid' ::: 1 & T=$!; sleep 5; pstree $$; kill -INT $T; sleep 1; pstree $$; echo '**' bash-+-perl---bash---sleep `-pstree bash---pstree +** +echo '### Do children receive --termseq signals' +### Do children receive --termseq signals + show_signals() { perl -e 'for(keys %SIG) { $SIG{$_} = eval "sub { print STDERR \"Got $_\\n\"; }";} while(1){sleep 1}'; }; export -f show_signals; echo | stdout parallel --termseq TERM,200,TERM,100,TERM,50,KILL,25 -u --timeout 1 show_signals; echo | stdout parallel --termseq INT,200,TERM,100,KILL,25 -u --timeout 1 show_signals; sleep 3; +Got TERM +Got TERM +Got TERM +Got INT +Got TERM diff --git a/testsuite/wanted-results/parallel-local-sql b/testsuite/wanted-results/parallel-local-sql index 07fb18b3..17808bf5 100644 --- a/testsuite/wanted-results/parallel-local-sql +++ b/testsuite/wanted-results/parallel-local-sql @@ -32,58 +32,58 @@ echo '### --sqlandworker postgresql' ### --sqlandworker postgresql (sleep 2; parallel --sqlworker $PGTBL sleep .3\;echo >$T3) & parallel --sqlandworker $PGTBL sleep .3\;echo ::: {1..5} ::: {a..e} >$T4; true sort -u $T3 $T4; sql $PG 'select * from parsql order by seq;' - seq | host | starttime | jobruntime | send | receive | exitval | _signal | command | v1 | v2 | stdout | stderr ------+------+-------------+------------+------+---------+---------+---------+-------------------+----+----+--------+-------- - 1 | : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 1 a | 1 | a | 1 a +| - | | | | | | | | | | | | - 2 | : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 1 b | 1 | b | 1 b +| - | | | | | | | | | | | | - 3 | : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 1 c | 1 | c | 1 c +| - | | | | | | | | | | | | - 4 | : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 1 d | 1 | d | 1 d +| - | | | | | | | | | | | | - 5 | : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 1 e | 1 | e | 1 e +| - | | | | | | | | | | | | - 6 | : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 2 a | 2 | a | 2 a +| - | | | | | | | | | | | | - 7 | : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 2 b | 2 | b | 2 b +| - | | | | | | | | | | | | - 8 | : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 2 c | 2 | c | 2 c +| - | | | | | | | | | | | | - 9 | : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 2 d | 2 | d | 2 d +| - | | | | | | | | | | | | -999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 2 e | 2 | e | 2 e +| - | | | | | | | | | | | | -999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 3 a | 3 | a | 3 a +| - | | | | | | | | | | | | -999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 3 b | 3 | b | 3 b +| - | | | | | | | | | | | | -999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 3 c | 3 | c | 3 c +| - | | | | | | | | | | | | -999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 3 d | 3 | d | 3 d +| - | | | | | | | | | | | | -999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 3 e | 3 | e | 3 e +| - | | | | | | | | | | | | -999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 4 a | 4 | a | 4 a +| - | | | | | | | | | | | | -999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 4 b | 4 | b | 4 b +| - | | | | | | | | | | | | -999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 4 c | 4 | c | 4 c +| - | | | | | | | | | | | | -999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 4 d | 4 | d | 4 d +| - | | | | | | | | | | | | -999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 4 e | 4 | e | 4 e +| - | | | | | | | | | | | | -999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 5 a | 5 | a | 5 a +| - | | | | | | | | | | | | -999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 5 b | 5 | b | 5 b +| - | | | | | | | | | | | | -999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 5 c | 5 | c | 5 c +| - | | | | | | | | | | | | -999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 5 d | 5 | d | 5 d +| - | | | | | | | | | | | | -999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 5 e | 5 | e | 5 e +| - | | | | | | | | | | | | + seq | host | starttime | jobruntime | send | receive | exitval | _signal | command | v1 | v2 | stdout | stderr +-----+------+----------------+------------+------+---------+---------+---------+-------------------+----+----+--------+-------- + 1 | : |999|999| | 4 | 0 | 0 | sleep .3;echo 1 a | 1 | a | 1 a +| + | | | | | | | | | | | | + 2 | : |999|999| | 4 | 0 | 0 | sleep .3;echo 1 b | 1 | b | 1 b +| + | | | | | | | | | | | | + 3 | : |999|999| | 4 | 0 | 0 | sleep .3;echo 1 c | 1 | c | 1 c +| + | | | | | | | | | | | | + 4 | : |999|999| | 4 | 0 | 0 | sleep .3;echo 1 d | 1 | d | 1 d +| + | | | | | | | | | | | | + 5 | : |999|999| | 4 | 0 | 0 | sleep .3;echo 1 e | 1 | e | 1 e +| + | | | | | | | | | | | | + 6 | : |999|999| | 4 | 0 | 0 | sleep .3;echo 2 a | 2 | a | 2 a +| + | | | | | | | | | | | | + 7 | : |999|999| | 4 | 0 | 0 | sleep .3;echo 2 b | 2 | b | 2 b +| + | | | | | | | | | | | | + 8 | : |999|999| | 4 | 0 | 0 | sleep .3;echo 2 c | 2 | c | 2 c +| + | | | | | | | | | | | | + 9 | : |999|999| | 4 | 0 | 0 | sleep .3;echo 2 d | 2 | d | 2 d +| + | | | | | | | | | | | | +999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 2 e | 2 | e | 2 e +| + | | | | | | | | | | | | +999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 3 a | 3 | a | 3 a +| + | | | | | | | | | | | | +999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 3 b | 3 | b | 3 b +| + | | | | | | | | | | | | +999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 3 c | 3 | c | 3 c +| + | | | | | | | | | | | | +999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 3 d | 3 | d | 3 d +| + | | | | | | | | | | | | +999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 3 e | 3 | e | 3 e +| + | | | | | | | | | | | | +999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 4 a | 4 | a | 4 a +| + | | | | | | | | | | | | +999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 4 b | 4 | b | 4 b +| + | | | | | | | | | | | | +999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 4 c | 4 | c | 4 c +| + | | | | | | | | | | | | +999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 4 d | 4 | d | 4 d +| + | | | | | | | | | | | | +999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 4 e | 4 | e | 4 e +| + | | | | | | | | | | | | +999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 5 a | 5 | a | 5 a +| + | | | | | | | | | | | | +999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 5 b | 5 | b | 5 b +| + | | | | | | | | | | | | +999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 5 c | 5 | c | 5 c +| + | | | | | | | | | | | | +999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 5 d | 5 | d | 5 d +| + | | | | | | | | | | | | +999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 5 e | 5 | e | 5 e +| + | | | | | | | | | | | | (999rows) echo '### --sqlandworker sqlite' @@ -145,58 +145,58 @@ echo '### --sqlandworker postgresql -S lo' ### --sqlandworker postgresql -S lo (sleep 2; parallel -S lo --sqlworker $PGTBL2 sleep .3\;echo >$T7) & parallel -S lo --sqlandworker $PGTBL2 sleep .3\;echo ::: {1..5} ::: {a..e} >$T8; true sort -u $T7 $T8; sql $PG 'select * from parsql2 order by seq;' - seq | host | starttime | jobruntime | send | receive | exitval | _signal | command | v1 | v2 | stdout | stderr ------+------+-------------+------------+------+---------+---------+---------+-------------------+----+----+--------+-------- - 1 | lo |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 1 a | 1 | a | 1 a +| - | | | | | | | | | | | | - 2 | lo |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 1 b | 1 | b | 1 b +| - | | | | | | | | | | | | - 3 | lo |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 1 c | 1 | c | 1 c +| - | | | | | | | | | | | | - 4 | lo |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 1 d | 1 | d | 1 d +| - | | | | | | | | | | | | - 5 | lo |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 1 e | 1 | e | 1 e +| - | | | | | | | | | | | | - 6 | lo |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 2 a | 2 | a | 2 a +| - | | | | | | | | | | | | - 7 | lo |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 2 b | 2 | b | 2 b +| - | | | | | | | | | | | | - 8 | lo |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 2 c | 2 | c | 2 c +| - | | | | | | | | | | | | - 9 | lo |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 2 d | 2 | d | 2 d +| - | | | | | | | | | | | | -999| lo |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 2 e | 2 | e | 2 e +| - | | | | | | | | | | | | -999| lo |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 3 a | 3 | a | 3 a +| - | | | | | | | | | | | | -999| lo |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 3 b | 3 | b | 3 b +| - | | | | | | | | | | | | -999| lo |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 3 c | 3 | c | 3 c +| - | | | | | | | | | | | | -999| lo |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 3 d | 3 | d | 3 d +| - | | | | | | | | | | | | -999| lo |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 3 e | 3 | e | 3 e +| - | | | | | | | | | | | | -999| lo |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 4 a | 4 | a | 4 a +| - | | | | | | | | | | | | -999| lo |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 4 b | 4 | b | 4 b +| - | | | | | | | | | | | | -999| lo |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 4 c | 4 | c | 4 c +| - | | | | | | | | | | | | -999| lo |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 4 d | 4 | d | 4 d +| - | | | | | | | | | | | | -999| lo |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 4 e | 4 | e | 4 e +| - | | | | | | | | | | | | -999| lo |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 5 a | 5 | a | 5 a +| - | | | | | | | | | | | | -999| lo |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 5 b | 5 | b | 5 b +| - | | | | | | | | | | | | -999| lo |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 5 c | 5 | c | 5 c +| - | | | | | | | | | | | | -999| lo |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 5 d | 5 | d | 5 d +| - | | | | | | | | | | | | -999| lo |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 5 e | 5 | e | 5 e +| - | | | | | | | | | | | | + seq | host | starttime | jobruntime | send | receive | exitval | _signal | command | v1 | v2 | stdout | stderr +-----+------+----------------+------------+------+---------+---------+---------+-------------------+----+----+--------+-------- + 1 | lo |999|999| | 4 | 0 | 0 | sleep .3;echo 1 a | 1 | a | 1 a +| + | | | | | | | | | | | | + 2 | lo |999|999| | 4 | 0 | 0 | sleep .3;echo 1 b | 1 | b | 1 b +| + | | | | | | | | | | | | + 3 | lo |999|999| | 4 | 0 | 0 | sleep .3;echo 1 c | 1 | c | 1 c +| + | | | | | | | | | | | | + 4 | lo |999|999| | 4 | 0 | 0 | sleep .3;echo 1 d | 1 | d | 1 d +| + | | | | | | | | | | | | + 5 | lo |999|999| | 4 | 0 | 0 | sleep .3;echo 1 e | 1 | e | 1 e +| + | | | | | | | | | | | | + 6 | lo |999|999| | 4 | 0 | 0 | sleep .3;echo 2 a | 2 | a | 2 a +| + | | | | | | | | | | | | + 7 | lo |999|999| | 4 | 0 | 0 | sleep .3;echo 2 b | 2 | b | 2 b +| + | | | | | | | | | | | | + 8 | lo |999|999| | 4 | 0 | 0 | sleep .3;echo 2 c | 2 | c | 2 c +| + | | | | | | | | | | | | + 9 | lo |999|999| | 4 | 0 | 0 | sleep .3;echo 2 d | 2 | d | 2 d +| + | | | | | | | | | | | | +999| lo |999|999| | 4 | 0 | 0 | sleep .3;echo 2 e | 2 | e | 2 e +| + | | | | | | | | | | | | +999| lo |999|999| | 4 | 0 | 0 | sleep .3;echo 3 a | 3 | a | 3 a +| + | | | | | | | | | | | | +999| lo |999|999| | 4 | 0 | 0 | sleep .3;echo 3 b | 3 | b | 3 b +| + | | | | | | | | | | | | +999| lo |999|999| | 4 | 0 | 0 | sleep .3;echo 3 c | 3 | c | 3 c +| + | | | | | | | | | | | | +999| lo |999|999| | 4 | 0 | 0 | sleep .3;echo 3 d | 3 | d | 3 d +| + | | | | | | | | | | | | +999| lo |999|999| | 4 | 0 | 0 | sleep .3;echo 3 e | 3 | e | 3 e +| + | | | | | | | | | | | | +999| lo |999|999| | 4 | 0 | 0 | sleep .3;echo 4 a | 4 | a | 4 a +| + | | | | | | | | | | | | +999| lo |999|999| | 4 | 0 | 0 | sleep .3;echo 4 b | 4 | b | 4 b +| + | | | | | | | | | | | | +999| lo |999|999| | 4 | 0 | 0 | sleep .3;echo 4 c | 4 | c | 4 c +| + | | | | | | | | | | | | +999| lo |999|999| | 4 | 0 | 0 | sleep .3;echo 4 d | 4 | d | 4 d +| + | | | | | | | | | | | | +999| lo |999|999| | 4 | 0 | 0 | sleep .3;echo 4 e | 4 | e | 4 e +| + | | | | | | | | | | | | +999| lo |999|999| | 4 | 0 | 0 | sleep .3;echo 5 a | 5 | a | 5 a +| + | | | | | | | | | | | | +999| lo |999|999| | 4 | 0 | 0 | sleep .3;echo 5 b | 5 | b | 5 b +| + | | | | | | | | | | | | +999| lo |999|999| | 4 | 0 | 0 | sleep .3;echo 5 c | 5 | c | 5 c +| + | | | | | | | | | | | | +999| lo |999|999| | 4 | 0 | 0 | sleep .3;echo 5 d | 5 | d | 5 d +| + | | | | | | | | | | | | +999| lo |999|999| | 4 | 0 | 0 | sleep .3;echo 5 e | 5 | e | 5 e +| + | | | | | | | | | | | | (999rows) echo '### --sqlandworker postgresql --results' @@ -204,98 +204,98 @@ echo '### --sqlandworker postgresql --results' mkdir -p /tmp/out--sql (sleep 2; parallel --results /tmp/out--sql --sqlworker $PGTBL3 sleep .3\;echo >$T9) & parallel --results /tmp/out--sql --sqlandworker $PGTBL3 sleep .3\;echo ::: {1..5} ::: {a..e} >$T999; true sort -u $T9 $T999; sql $PG 'select * from parsql3 order by seq;' - seq | host | starttime | jobruntime | send | receive | exitval | _signal | command | v1 | v2 | stdout | stderr ------+------+-------------+------------+------+---------+---------+---------+-------------------+----+----+------------------------------+------------------------------ - 1 | : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 1 a | 1 | a | /tmp/out--sql/1/1/2/a/stdout | /tmp/out--sql/1/1/2/a/stderr - 2 | : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 1 b | 1 | b | /tmp/out--sql/1/1/2/b/stdout | /tmp/out--sql/1/1/2/b/stderr - 3 | : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 1 c | 1 | c | /tmp/out--sql/1/1/2/c/stdout | /tmp/out--sql/1/1/2/c/stderr - 4 | : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 1 d | 1 | d | /tmp/out--sql/1/1/2/d/stdout | /tmp/out--sql/1/1/2/d/stderr - 5 | : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 1 e | 1 | e | /tmp/out--sql/1/1/2/e/stdout | /tmp/out--sql/1/1/2/e/stderr - 6 | : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 2 a | 2 | a | /tmp/out--sql/1/2/2/a/stdout | /tmp/out--sql/1/2/2/a/stderr - 7 | : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 2 b | 2 | b | /tmp/out--sql/1/2/2/b/stdout | /tmp/out--sql/1/2/2/b/stderr - 8 | : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 2 c | 2 | c | /tmp/out--sql/1/2/2/c/stdout | /tmp/out--sql/1/2/2/c/stderr - 9 | : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 2 d | 2 | d | /tmp/out--sql/1/2/2/d/stdout | /tmp/out--sql/1/2/2/d/stderr -999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 2 e | 2 | e | /tmp/out--sql/1/2/2/e/stdout | /tmp/out--sql/1/2/2/e/stderr -999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 3 a | 3 | a | /tmp/out--sql/1/3/2/a/stdout | /tmp/out--sql/1/3/2/a/stderr -999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 3 b | 3 | b | /tmp/out--sql/1/3/2/b/stdout | /tmp/out--sql/1/3/2/b/stderr -999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 3 c | 3 | c | /tmp/out--sql/1/3/2/c/stdout | /tmp/out--sql/1/3/2/c/stderr -999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 3 d | 3 | d | /tmp/out--sql/1/3/2/d/stdout | /tmp/out--sql/1/3/2/d/stderr -999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 3 e | 3 | e | /tmp/out--sql/1/3/2/e/stdout | /tmp/out--sql/1/3/2/e/stderr -999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 4 a | 4 | a | /tmp/out--sql/1/4/2/a/stdout | /tmp/out--sql/1/4/2/a/stderr -999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 4 b | 4 | b | /tmp/out--sql/1/4/2/b/stdout | /tmp/out--sql/1/4/2/b/stderr -999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 4 c | 4 | c | /tmp/out--sql/1/4/2/c/stdout | /tmp/out--sql/1/4/2/c/stderr -999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 4 d | 4 | d | /tmp/out--sql/1/4/2/d/stdout | /tmp/out--sql/1/4/2/d/stderr -999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 4 e | 4 | e | /tmp/out--sql/1/4/2/e/stdout | /tmp/out--sql/1/4/2/e/stderr -999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 5 a | 5 | a | /tmp/out--sql/1/5/2/a/stdout | /tmp/out--sql/1/5/2/a/stderr -999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 5 b | 5 | b | /tmp/out--sql/1/5/2/b/stdout | /tmp/out--sql/1/5/2/b/stderr -999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 5 c | 5 | c | /tmp/out--sql/1/5/2/c/stdout | /tmp/out--sql/1/5/2/c/stderr -999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 5 d | 5 | d | /tmp/out--sql/1/5/2/d/stdout | /tmp/out--sql/1/5/2/d/stderr -999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 5 e | 5 | e | /tmp/out--sql/1/5/2/e/stdout | /tmp/out--sql/1/5/2/e/stderr + seq | host | starttime | jobruntime | send | receive | exitval | _signal | command | v1 | v2 | stdout | stderr +-----+------+----------------+------------+------+---------+---------+---------+-------------------+----+----+------------------------------+------------------------------ + 1 | : |999|999| | 4 | 0 | 0 | sleep .3;echo 1 a | 1 | a | /tmp/out--sql/1/1/2/a/stdout | /tmp/out--sql/1/1/2/a/stderr + 2 | : |999|999| | 4 | 0 | 0 | sleep .3;echo 1 b | 1 | b | /tmp/out--sql/1/1/2/b/stdout | /tmp/out--sql/1/1/2/b/stderr + 3 | : |999|999| | 4 | 0 | 0 | sleep .3;echo 1 c | 1 | c | /tmp/out--sql/1/1/2/c/stdout | /tmp/out--sql/1/1/2/c/stderr + 4 | : |999|999| | 4 | 0 | 0 | sleep .3;echo 1 d | 1 | d | /tmp/out--sql/1/1/2/d/stdout | /tmp/out--sql/1/1/2/d/stderr + 5 | : |999|999| | 4 | 0 | 0 | sleep .3;echo 1 e | 1 | e | /tmp/out--sql/1/1/2/e/stdout | /tmp/out--sql/1/1/2/e/stderr + 6 | : |999|999| | 4 | 0 | 0 | sleep .3;echo 2 a | 2 | a | /tmp/out--sql/1/2/2/a/stdout | /tmp/out--sql/1/2/2/a/stderr + 7 | : |999|999| | 4 | 0 | 0 | sleep .3;echo 2 b | 2 | b | /tmp/out--sql/1/2/2/b/stdout | /tmp/out--sql/1/2/2/b/stderr + 8 | : |999|999| | 4 | 0 | 0 | sleep .3;echo 2 c | 2 | c | /tmp/out--sql/1/2/2/c/stdout | /tmp/out--sql/1/2/2/c/stderr + 9 | : |999|999| | 4 | 0 | 0 | sleep .3;echo 2 d | 2 | d | /tmp/out--sql/1/2/2/d/stdout | /tmp/out--sql/1/2/2/d/stderr +999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 2 e | 2 | e | /tmp/out--sql/1/2/2/e/stdout | /tmp/out--sql/1/2/2/e/stderr +999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 3 a | 3 | a | /tmp/out--sql/1/3/2/a/stdout | /tmp/out--sql/1/3/2/a/stderr +999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 3 b | 3 | b | /tmp/out--sql/1/3/2/b/stdout | /tmp/out--sql/1/3/2/b/stderr +999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 3 c | 3 | c | /tmp/out--sql/1/3/2/c/stdout | /tmp/out--sql/1/3/2/c/stderr +999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 3 d | 3 | d | /tmp/out--sql/1/3/2/d/stdout | /tmp/out--sql/1/3/2/d/stderr +999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 3 e | 3 | e | /tmp/out--sql/1/3/2/e/stdout | /tmp/out--sql/1/3/2/e/stderr +999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 4 a | 4 | a | /tmp/out--sql/1/4/2/a/stdout | /tmp/out--sql/1/4/2/a/stderr +999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 4 b | 4 | b | /tmp/out--sql/1/4/2/b/stdout | /tmp/out--sql/1/4/2/b/stderr +999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 4 c | 4 | c | /tmp/out--sql/1/4/2/c/stdout | /tmp/out--sql/1/4/2/c/stderr +999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 4 d | 4 | d | /tmp/out--sql/1/4/2/d/stdout | /tmp/out--sql/1/4/2/d/stderr +999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 4 e | 4 | e | /tmp/out--sql/1/4/2/e/stdout | /tmp/out--sql/1/4/2/e/stderr +999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 5 a | 5 | a | /tmp/out--sql/1/5/2/a/stdout | /tmp/out--sql/1/5/2/a/stderr +999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 5 b | 5 | b | /tmp/out--sql/1/5/2/b/stdout | /tmp/out--sql/1/5/2/b/stderr +999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 5 c | 5 | c | /tmp/out--sql/1/5/2/c/stdout | /tmp/out--sql/1/5/2/c/stderr +999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 5 d | 5 | d | /tmp/out--sql/1/5/2/d/stdout | /tmp/out--sql/1/5/2/d/stderr +999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 5 e | 5 | e | /tmp/out--sql/1/5/2/e/stdout | /tmp/out--sql/1/5/2/e/stderr (999rows) echo '### --sqlandworker postgresql --linebuffer' ### --sqlandworker postgresql --linebuffer (sleep 2; parallel --linebuffer --sqlworker $PGTBL4 sleep .3\;echo >$T999) & parallel --linebuffer --sqlandworker $PGTBL4 sleep .3\;echo ::: {1..5} ::: {a..e} >$T999; true sort -u $T999$T999; sql $PG 'select * from parsql4 order by seq;' - seq | host | starttime | jobruntime | send | receive | exitval | _signal | command | v1 | v2 | stdout | stderr ------+------+-------------+------------+------+---------+---------+---------+-------------------+----+----+--------+-------- - 1 | : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 1 a | 1 | a | | - 2 | : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 1 b | 1 | b | | - 3 | : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 1 c | 1 | c | | - 4 | : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 1 d | 1 | d | | - 5 | : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 1 e | 1 | e | | - 6 | : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 2 a | 2 | a | | - 7 | : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 2 b | 2 | b | | - 8 | : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 2 c | 2 | c | | - 9 | : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 2 d | 2 | d | | -999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 2 e | 2 | e | | -999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 3 a | 3 | a | | -999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 3 b | 3 | b | | -999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 3 c | 3 | c | | -999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 3 d | 3 | d | | -999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 3 e | 3 | e | | -999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 4 a | 4 | a | | -999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 4 b | 4 | b | | -999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 4 c | 4 | c | | -999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 4 d | 4 | d | | -999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 4 e | 4 | e | | -999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 5 a | 5 | a | | -999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 5 b | 5 | b | | -999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 5 c | 5 | c | | -999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 5 d | 5 | d | | -999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 5 e | 5 | e | | + seq | host | starttime | jobruntime | send | receive | exitval | _signal | command | v1 | v2 | stdout | stderr +-----+------+----------------+------------+------+---------+---------+---------+-------------------+----+----+--------+-------- + 1 | : |999|999| | 4 | 0 | 0 | sleep .3;echo 1 a | 1 | a | | + 2 | : |999|999| | 4 | 0 | 0 | sleep .3;echo 1 b | 1 | b | | + 3 | : |999|999| | 4 | 0 | 0 | sleep .3;echo 1 c | 1 | c | | + 4 | : |999|999| | 4 | 0 | 0 | sleep .3;echo 1 d | 1 | d | | + 5 | : |999|999| | 4 | 0 | 0 | sleep .3;echo 1 e | 1 | e | | + 6 | : |999|999| | 4 | 0 | 0 | sleep .3;echo 2 a | 2 | a | | + 7 | : |999|999| | 4 | 0 | 0 | sleep .3;echo 2 b | 2 | b | | + 8 | : |999|999| | 4 | 0 | 0 | sleep .3;echo 2 c | 2 | c | | + 9 | : |999|999| | 4 | 0 | 0 | sleep .3;echo 2 d | 2 | d | | +999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 2 e | 2 | e | | +999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 3 a | 3 | a | | +999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 3 b | 3 | b | | +999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 3 c | 3 | c | | +999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 3 d | 3 | d | | +999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 3 e | 3 | e | | +999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 4 a | 4 | a | | +999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 4 b | 4 | b | | +999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 4 c | 4 | c | | +999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 4 d | 4 | d | | +999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 4 e | 4 | e | | +999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 5 a | 5 | a | | +999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 5 b | 5 | b | | +999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 5 c | 5 | c | | +999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 5 d | 5 | d | | +999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 5 e | 5 | e | | (999rows) echo '### --sqlandworker postgresql -u' ### --sqlandworker postgresql -u (sleep 2; parallel -u --sqlworker $PGTBL5 sleep .3\;echo >$T999) & parallel -u --sqlandworker $PGTBL5 sleep .3\;echo ::: {1..5} ::: {a..e} >$T999; true sort -u $T999$T999; sql $PG 'select * from parsql5 order by seq;' - seq | host | starttime | jobruntime | send | receive | exitval | _signal | command | v1 | v2 | stdout | stderr ------+------+-------------+------------+------+---------+---------+---------+-------------------+----+----+--------+-------- - 1 | : |999e+999|999| | | 0 | 0 | sleep .3;echo 1 a | 1 | a | | - 2 | : |999e+999|999| | | 0 | 0 | sleep .3;echo 1 b | 1 | b | | - 3 | : |999e+999|999| | | 0 | 0 | sleep .3;echo 1 c | 1 | c | | - 4 | : |999e+999|999| | | 0 | 0 | sleep .3;echo 1 d | 1 | d | | - 5 | : |999e+999|999| | | 0 | 0 | sleep .3;echo 1 e | 1 | e | | - 6 | : |999e+999|999| | | 0 | 0 | sleep .3;echo 2 a | 2 | a | | - 7 | : |999e+999|999| | | 0 | 0 | sleep .3;echo 2 b | 2 | b | | - 8 | : |999e+999|999| | | 0 | 0 | sleep .3;echo 2 c | 2 | c | | - 9 | : |999e+999|999| | | 0 | 0 | sleep .3;echo 2 d | 2 | d | | -999| : |999e+999|999| | | 0 | 0 | sleep .3;echo 2 e | 2 | e | | -999| : |999e+999|999| | | 0 | 0 | sleep .3;echo 3 a | 3 | a | | -999| : |999e+999|999| | | 0 | 0 | sleep .3;echo 3 b | 3 | b | | -999| : |999e+999|999| | | 0 | 0 | sleep .3;echo 3 c | 3 | c | | -999| : |999e+999|999| | | 0 | 0 | sleep .3;echo 3 d | 3 | d | | -999| : |999e+999|999| | | 0 | 0 | sleep .3;echo 3 e | 3 | e | | -999| : |999e+999|999| | | 0 | 0 | sleep .3;echo 4 a | 4 | a | | -999| : |999e+999|999| | | 0 | 0 | sleep .3;echo 4 b | 4 | b | | -999| : |999e+999|999| | | 0 | 0 | sleep .3;echo 4 c | 4 | c | | -999| : |999e+999|999| | | 0 | 0 | sleep .3;echo 4 d | 4 | d | | -999| : |999e+999|999| | | 0 | 0 | sleep .3;echo 4 e | 4 | e | | -999| : |999e+999|999| | | 0 | 0 | sleep .3;echo 5 a | 5 | a | | -999| : |999e+999|999| | | 0 | 0 | sleep .3;echo 5 b | 5 | b | | -999| : |999e+999|999| | | 0 | 0 | sleep .3;echo 5 c | 5 | c | | -999| : |999e+999|999| | | 0 | 0 | sleep .3;echo 5 d | 5 | d | | -999| : |999e+999|999| | | 0 | 0 | sleep .3;echo 5 e | 5 | e | | + seq | host | starttime | jobruntime | send | receive | exitval | _signal | command | v1 | v2 | stdout | stderr +-----+------+----------------+------------+------+---------+---------+---------+-------------------+----+----+--------+-------- + 1 | : |999|999| | | 0 | 0 | sleep .3;echo 1 a | 1 | a | | + 2 | : |999|999| | | 0 | 0 | sleep .3;echo 1 b | 1 | b | | + 3 | : |999|999| | | 0 | 0 | sleep .3;echo 1 c | 1 | c | | + 4 | : |999|999| | | 0 | 0 | sleep .3;echo 1 d | 1 | d | | + 5 | : |999|999| | | 0 | 0 | sleep .3;echo 1 e | 1 | e | | + 6 | : |999|999| | | 0 | 0 | sleep .3;echo 2 a | 2 | a | | + 7 | : |999|999| | | 0 | 0 | sleep .3;echo 2 b | 2 | b | | + 8 | : |999|999| | | 0 | 0 | sleep .3;echo 2 c | 2 | c | | + 9 | : |999|999| | | 0 | 0 | sleep .3;echo 2 d | 2 | d | | +999| : |999|999| | | 0 | 0 | sleep .3;echo 2 e | 2 | e | | +999| : |999|999| | | 0 | 0 | sleep .3;echo 3 a | 3 | a | | +999| : |999|999| | | 0 | 0 | sleep .3;echo 3 b | 3 | b | | +999| : |999|999| | | 0 | 0 | sleep .3;echo 3 c | 3 | c | | +999| : |999|999| | | 0 | 0 | sleep .3;echo 3 d | 3 | d | | +999| : |999|999| | | 0 | 0 | sleep .3;echo 3 e | 3 | e | | +999| : |999|999| | | 0 | 0 | sleep .3;echo 4 a | 4 | a | | +999| : |999|999| | | 0 | 0 | sleep .3;echo 4 b | 4 | b | | +999| : |999|999| | | 0 | 0 | sleep .3;echo 4 c | 4 | c | | +999| : |999|999| | | 0 | 0 | sleep .3;echo 4 d | 4 | d | | +999| : |999|999| | | 0 | 0 | sleep .3;echo 4 e | 4 | e | | +999| : |999|999| | | 0 | 0 | sleep .3;echo 5 a | 5 | a | | +999| : |999|999| | | 0 | 0 | sleep .3;echo 5 b | 5 | b | | +999| : |999|999| | | 0 | 0 | sleep .3;echo 5 c | 5 | c | | +999| : |999|999| | | 0 | 0 | sleep .3;echo 5 d | 5 | d | | +999| : |999|999| | | 0 | 0 | sleep .3;echo 5 e | 5 | e | | (999rows) diff --git a/testsuite/wanted-results/parallel-local-ssh4 b/testsuite/wanted-results/parallel-local-ssh4 index c0fb1d78..f29ad39a 100644 --- a/testsuite/wanted-results/parallel-local-ssh4 +++ b/testsuite/wanted-results/parallel-local-ssh4 @@ -140,7 +140,6 @@ Funky- * Documentation: http://www.linuxmint.com -0 updates are security updates. zsh:130: command not found: alias_echo function_works @@ -166,7 +165,6 @@ Funky- * Documentation: http://www.linuxmint.com -0 updates are security updates. 3 arg alias_works function_works @@ -190,7 +188,6 @@ Funky- * Documentation: http://www.linuxmint.com -0 updates are security updates. 3 arg alias_works function_works @@ -223,7 +220,6 @@ Funky-   !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJ * Documentation: http://www.linuxmint.com -0 updates are security updates. Warning: no access to tty (Bad file descriptor). Thus no job control in this shell. diff --git a/testsuite/wanted-results/parallel-polarhome b/testsuite/wanted-results/parallel-polarhome index 21ca2962..bfac1e7b 100644 --- a/testsuite/wanted-results/parallel-polarhome +++ b/testsuite/wanted-results/parallel-polarhome @@ -3,7 +3,7 @@ Setup on polarhome machines copy_and_test freebsd.polarhome.com freebsd.polarhome.com ### Run the test on freebsd.polarhome.com freebsd.polarhome.com Works on freebsd.polarhome.com -freebsd.polarhome.com Error in tempfile() using /XXXXXXXX.arg: Could not create temp file /XXXXXXXX.arg: Permission denied at bin/parallel line 0000. +freebsd.polarhome.com Error in tempfile() using template /XXXXXXXX.arg: Could not create temp file /XXXXXXXX.arg: Permission denied at bin/parallel line 0000. copy_and_test solaris.polarhome.com solaris.polarhome.com ### Run the test on solaris.polarhome.com solaris.polarhome.com Works on solaris.polarhome.com @@ -68,10 +68,6 @@ copy_and_test unixware.polarhome.com unixware.polarhome.com ### Run the test on unixware.polarhome.com unixware.polarhome.com Works on unixware.polarhome.com unixware.polarhome.com Error in tempfile() using /XXXXXXXX.arg: Could not create temp file /XXXXXXXX.arg: Permission denied at bin/parallel line 0000 -copy_and_test dragonfly.polarhome.com -dragonfly.polarhome.com ### Run the test on dragonfly.polarhome.com -dragonfly.polarhome.com Works on dragonfly.polarhome.com -dragonfly.polarhome.com Error in tempfile() using /XXXXXXXX.arg: Could not create temp file /XXXXXXXX.arg: Permission denied at bin/parallel line 0000 copy_and_test centos.polarhome.com centos.polarhome.com ### Run the test on centos.polarhome.com centos.polarhome.com Works on centos.polarhome.com @@ -102,7 +98,6 @@ pidora.polarhome.com Error in tempfile() using template /XXXXXXXX.arg: Could not aix7 centos.polarhome.com debian -dragonfly.polarhome.com freebsd.polarhome.com hpux-ia64 hpux64 diff --git a/testsuite/wanted-results/parallel-tutorial b/testsuite/wanted-results/parallel-tutorial index 36ccf9d9..8bfa0a39 100644 --- a/testsuite/wanted-results/parallel-tutorial +++ b/testsuite/wanted-results/parallel-tutorial @@ -187,6 +187,26 @@ B 1 parallel echo '{= s:\.[^.]+$::;s:\.[^.]+$::; =}' ::: foo.tar.gz foo + parallel echo Job {#} of {= '$_=total_jobs()' =} ::: {1..5} +Job 1 of 5 +Job 2 of 5 +Job 3 of 5 +Job 4 of 5 +Job 5 of 5 + parallel echo {} shell quoted is {= '$_=Q($_)' =} ::: '*/!#$' +*/!#$ shell quoted is \*/\!\#\$ + parallel echo {= 'if($_==3) { $job->skip() }' =} ::: {1..5} +1 +2 +4 +5 + parallel echo {= 'if($arg[1]==$arg[2]) { $job->skip() }' =} ::: {1..3} ::: {1..3} +1 2 +1 3 +2 1 +2 3 +3 1 +3 2 parallel --parens ,,,, echo ',, s:\.[^.]+$::;s:\.[^.]+$::; ,,' ::: foo.tar.gz foo parallel --rpl '.. s:\.[^.]+$::;s:\.[^.]+$::;' echo '..' ::: foo.tar.gz @@ -240,6 +260,28 @@ f1=B f2=D parallel --header : --colsep '\t' echo f1={f1} f2={f2} :::: tsv-file.tsv f1=A f2=B f1=C f2=D + parallel --plus echo {} ::: dir/sub/file.ext1.ext2.ext3 + parallel --plus echo {+/}/{/} ::: dir/sub/file.ext1.ext2.ext3 + parallel --plus echo {.}.{+.} ::: dir/sub/file.ext1.ext2.ext3 + parallel --plus echo {+/}/{/.}.{+.} ::: dir/sub/file.ext1.ext2.ext3 + parallel --plus echo {..}.{+..} ::: dir/sub/file.ext1.ext2.ext3 + parallel --plus echo {+/}/{/..}.{+..} ::: dir/sub/file.ext1.ext2.ext3 + parallel --plus echo {...}.{+...} ::: dir/sub/file.ext1.ext2.ext3 + parallel --plus echo {+/}/{/...}.{+...} ::: dir/sub/file.ext1.ext2.ext3 +dir/sub/file.ext1.ext2.ext3 +dir/sub/file.ext1.ext2.ext3 +dir/sub/file.ext1.ext2.ext3 +dir/sub/file.ext1.ext2.ext3 +dir/sub/file.ext1.ext2.ext3 +dir/sub/file.ext1.ext2.ext3 +dir/sub/file.ext1.ext2.ext3 +dir/sub/file.ext1.ext2.ext3 + parallel --plus echo Job {#} of {##} ::: {1..5} +Job 1 of 5 +Job 2 of 5 +Job 3 of 5 +Job 4 of 5 +Job 5 of 5 cat num30000 | parallel --xargs echo | wc -l 3 cat num30000 | parallel --xargs -s 10000 echo | wc -l @@ -356,39 +398,53 @@ echo C A B C + outdir/1/A/seq outdir/1/A/stderr outdir/1/A/stdout + outdir/1/B/seq outdir/1/B/stderr outdir/1/B/stdout + outdir/1/C/seq outdir/1/C/stderr outdir/1/C/stdout -/bin/bash: outdir/1/A/stderr: No such file or directory -/bin/bash: line 1: outdir/1/A/stdout: No such file or directory -/bin/bash: line 2: outdir/1/B/stderr: No such file or directory -/bin/bash: line 3: outdir/1/B/stdout: No such file or directory -/bin/bash: line 4: outdir/1/C/stderr: No such file or directory -/bin/bash: line 5: outdir/1/C/stdout: No such file or directory +/bin/bash: outdir/1/A/seq: No such file or directory +/bin/bash: line 1: outdir/1/A/stderr: No such file or directory +/bin/bash: line 2: outdir/1/A/stdout: No such file or directory +/bin/bash: line 3: outdir/1/B/seq: No such file or directory +/bin/bash: line 4: outdir/1/B/stderr: No such file or directory +/bin/bash: line 5: outdir/1/B/stdout: No such file or directory +/bin/bash: line 6: outdir/1/C/seq: No such file or directory +/bin/bash: line 7: outdir/1/C/stderr: No such file or directory +/bin/bash: line 8: outdir/1/C/stdout: No such file or directory parallel --header : --results outdir echo ::: f1 A B ::: f2 C D A C A D B C B D + outdir/f1/A/f2/C/seq outdir/f1/A/f2/C/stderr outdir/f1/A/f2/C/stdout + outdir/f1/A/f2/D/seq outdir/f1/A/f2/D/stderr outdir/f1/A/f2/D/stdout + outdir/f1/B/f2/C/seq outdir/f1/B/f2/C/stderr outdir/f1/B/f2/C/stdout + outdir/f1/B/f2/D/seq outdir/f1/B/f2/D/stderr outdir/f1/B/f2/D/stdout -/bin/bash: outdir/f1/A/f2/C/stderr: No such file or directory -/bin/bash: line 1: outdir/f1/A/f2/C/stdout: No such file or directory -/bin/bash: line 2: outdir/f1/A/f2/D/stderr: No such file or directory -/bin/bash: line 3: outdir/f1/A/f2/D/stdout: No such file or directory -/bin/bash: line 4: outdir/f1/B/f2/C/stderr: No such file or directory -/bin/bash: line 5: outdir/f1/B/f2/C/stdout: No such file or directory -/bin/bash: line 6: outdir/f1/B/f2/D/stderr: No such file or directory -/bin/bash: line 7: outdir/f1/B/f2/D/stdout: No such file or directory +/bin/bash: outdir/f1/A/f2/C/seq: No such file or directory +/bin/bash: line 1: outdir/f1/A/f2/C/stderr: No such file or directory +/bin/bash: line 2: outdir/f1/A/f2/C/stdout: No such file or directory +/bin/bash: line 3: outdir/f1/A/f2/D/seq: No such file or directory +/bin/bash: line 4: outdir/f1/A/f2/D/stderr: No such file or directory +/bin/bash: line 5: outdir/f1/A/f2/D/stdout: No such file or directory +/bin/bash: line 6: outdir/f1/B/f2/C/seq: No such file or directory +/bin/bash: line 7: outdir/f1/B/f2/C/stderr: No such file or directory +/bin/bash: line 8: outdir/f1/B/f2/C/stdout: No such file or directory +/bin/bash: line 9: outdir/f1/B/f2/D/seq: No such file or directory +/bin/bash: line 10: outdir/f1/B/f2/D/stderr: No such file or directory +/bin/bash: line 11: outdir/f1/B/f2/D/stdout: No such file or directory /usr/bin/time -f %e parallel -N0 -j64 sleep 1 :::: num128 2 /usr/bin/time -f %e parallel -N0 sleep 1 :::: num128 @@ -474,6 +530,8 @@ BASE64 parallel --joblog /tmp/log exit ::: 1 2 3 0 cat /tmp/log; parallel --resume-failed --joblog /tmp/log exit ::: 1 2 3 0 0 0 cat /tmp/log; + parallel --resume-failed --joblog /tmp/log + cat /tmp/log; parallel -j2 --halt soon,fail=1 echo {}\; exit {} ::: 0 0 1 2 3 Seq Host Starttime JobRuntime Send Receive Exitval Signal Command 1 : TIMESTAMP 9.999 0 0 1 0 exit 1 @@ -502,6 +560,16 @@ Seq Host Starttime JobRuntime Send Receive Exitval Signal Command 1 : TIMESTAMP 9.999 0 0 1 0 exit 1 2 : TIMESTAMP 9.999 0 0 2 0 exit 2 3 : TIMESTAMP 9.999 0 0 3 0 exit 3 +Seq Host Starttime JobRuntime Send Receive Exitval Signal Command +1 : TIMESTAMP 9.999 0 0 1 0 exit 1 +2 : TIMESTAMP 9.999 0 0 2 0 exit 2 +3 : TIMESTAMP 9.999 0 0 3 0 exit 3 +4 : TIMESTAMP 9.999 0 0 0 0 exit 0 +5 : TIMESTAMP 9.999 0 0 0 0 exit 0 +6 : TIMESTAMP 9.999 0 0 0 0 exit 0 +1 : TIMESTAMP 9.999 0 0 1 0 exit 1 +2 : TIMESTAMP 9.999 0 0 2 0 exit 2 +3 : TIMESTAMP 9.999 0 0 3 0 exit 3 0 0 1 @@ -529,15 +597,13 @@ echo X; exit X parallel: Starting no more jobs. Waiting for 1 jobs to finish. parallel: This job failed: echo X; exit X - parallel -j2 --halt soon,success=1 echo {}\; exit {} ::: 1 2 3 0 4 5 6 + parallel -j2 --halt now,success=1 echo {}\; exit {} ::: 1 2 3 0 4 5 6 1 2 3 0 -4 parallel: This job succeeded: echo X; exit X -parallel: Starting no more jobs. Waiting for 1 jobs to finish. parallel -k --retries 3 'echo tried {} >>/tmp/runs; echo completed {}; exit {}' ::: 1 2 0 cat /tmp/runs completed 1 @@ -547,10 +613,19 @@ tried 1 tried 0 tried 1 tried 1 + show_signals() { + perl -e 'for(keys %SIG) { $SIG{$_} = eval "sub { print \"Got $_\\n\"; }";} while(1){sleep 1}' + } + export -f show_signals + echo | parallel --termseq TERM,200,TERM,100,TERM,50,KILL,25 -u --timeout 1 show_signals + echo | parallel --termseq INT,200,TERM,100,KILL,25 -u --timeout 1 show_signals +/bin/bash: show_signals: command not found parallel --load 100% echo load is less than {} job per cpu ::: 1 load is less than 1 job per cpu parallel --noswap echo the system is not swapping ::: now the system is not swapping now + parallel --memfree 1G echo will run if more than 1 GB is ::: free +will run if more than 1 GB is free parallel --nice 17 echo this is being run with nice -n ::: 17 this is being run with nice -n 17 parallel -S $SERVER1 echo running on ::: $SERVER1 @@ -560,6 +635,11 @@ running on username@parallel@lo parallel -S : echo running on ::: the_local_machine running on the_local_machine parallel -S '/usr/bin/ssh '$SERVER1 echo custom ::: ssh +custom ssh + parallel --ssh /usr/bin/ssh -S $SERVER1 echo custom ::: ssh +custom ssh + export PARALLEL_SSH=/usr/bin/ssh + parallel -S $SERVER1 echo custom ::: ssh custom ssh parallel -S $SERVER1 -S $SERVER2 echo ::: running on more hosts running @@ -576,18 +656,19 @@ more hosts parallel -S 4/$SERVER1 echo force {} cpus on server ::: 4 force 4 cpus on server - parallel --hostgroup -S @grp1/$SERVER1 -S @grp2/$SERVER2 echo {} ::: run_on_grp1@grp1 run_on_grp2@grp2 + parallel --hostgroup -S @grp1/$SERVER1 -S @grp2/$SERVER2 echo {} ::: \ + run_on_grp1@grp1 run_on_grp2@grp2 run_on_grp1 run_on_grp2 echo This is input_file > input_file - parallel -S $SERVER1 --transfer cat ::: input_file + parallel -S $SERVER1 --transferfile {} cat ::: input_file This is input_file echo This is input_file > input_file - parallel -S $SERVER1 --transfer --return {}.out cat {} ">"{}.out ::: input_file + parallel -S $SERVER1 --transferfile {} --return {}.out cat {} ">"{}.out ::: input_file cat input_file.out This is input_file echo This is input_file > input_file - parallel -S $SERVER1 --transfer --return {}.out --cleanup cat {} ">"{}.out ::: input_file + parallel -S $SERVER1 --transferfile {} --return {}.out --cleanup cat {} ">"{}.out ::: input_file cat input_file.out This is input_file echo This is input_file > input_file @@ -735,14 +816,34 @@ _ /bin/bash: my_func2: command not found parallel -vv -S $SERVER1 echo ::: bar -ssh -l parallel lo -- exec perl -e \''@GNU_Parallel=("use","IPC::Open3;","use","MIME::Base64");eval"@GNU_Parallel";$SIG{CHLD}="IGNORE";my$zip=(grep{-x$_}"/usr/local/bin/bzip2")[0]||"bzip2";my($in,$out,$eval);open3($in,$out,">&STDERR",$zip,"-dc");if(my$perlpid=fork){close$in;$eval=join"",<$out>;close$out;}else{close$out;print$in(decode_base64(join"",@ARGV));close$in;exit;}wait;eval$eval;'\' BASE64; +ssh -l parallel lo -- exec perl -e \''@GNU_Parallel=("use","IPC::Open3;","use","MIME::Base64");eval"@GNU_Parallel";my$eval;$eval=decode_base64(join"",@ARGV);eval$eval;'\' BASE64; bar my_func3() { echo in my_func $1 > $1.out } export -f my_func3 parallel -vv --workdir ... --nice 17 --env _ --trc {}.out -S $SERVER1 my_func3 {} ::: abc-file -( ssh -l parallel lo -- mkdir -p ./.TMPWORKDIR;rsync --protocol 30 -rlDzR -essh\ -l\ parallel ./abc-file lo:./.TMPWORKDIR );ssh -l parallel lo -- exec perl -e \''@GNU_Parallel=("use","IPC::Open3;","use","MIME::Base64");eval"@GNU_Parallel";$SIG{CHLD}="IGNORE";my$zip=(grep{-x$_}"/usr/local/bin/bzip2")[0]||"bzip2";my($in,$out,$eval);open3($in,$out,">&STDERR",$zip,"-dc");if(my$perlpid=fork){close$in;$eval=join"",<$out>;close$out;}else{close$out;print$in(decode_base64(join"",@ARGV));close$in;exit;}wait;eval$eval;'\' BASE64;_EXIT_status=$?; mkdir -p ./.; rsync --protocol 30 --rsync-path=cd\ ./.TMPWORKDIR/./.\;\ rsync -rlDzR -essh\ -l\ parallel lo:./abc-file.out ./.;ssh -l parallel lo -- \(rm\ -f\ ./.TMPWORKDIR/abc-file\;\ sh\ -c\ \'rmdir\ ./.TMPWORKDIR/\ ./.parallel/tmp/\ ./.parallel/\ 2\>/dev/null\'\;rm\ -rf\ ./.TMPWORKDIR\;\);ssh -l parallel lo -- \(rm\ -f\ ./.TMPWORKDIR/abc-file.out\;\ sh\ -c\ \'rmdir\ ./.TMPWORKDIR/\ ./.parallel/tmp/\ ./.parallel/\ 2\>/dev/null\'\;rm\ -rf\ ./.TMPWORKDIR\;\);ssh -l parallel lo -- rm -rf .TMPWORKDIR; exit $_EXIT_status; +( ssh -l parallel lo -- mkdir -p ./.TMPWORKDIR;rsync --protocol 30 -rlDzR -essh\ -l\ parallel ./abc-file lo:./.TMPWORKDIR );ssh -l parallel lo -- exec perl -e \''@GNU_Parallel=("use","IPC::Open3;","use","MIME::Base64");eval"@GNU_Parallel";my$eval;$eval=decode_base64(join"",@ARGV);eval$eval;'\' BASE64 BASE64;_EXIT_status=$?; mkdir -p ./.; rsync --protocol 30 --rsync-path=cd\ ./.TMPWORKDIR/./.\;\ rsync -rlDzR -essh\ -l\ parallel lo:./abc-file.out ./.;ssh -l parallel lo -- \(rm\ -f\ ./.TMPWORKDIR/abc-file\;\ sh\ -c\ \'rmdir\ ./.TMPWORKDIR/\ ./.parallel/tmp/\ ./.parallel/\ 2\>/dev/null\'\;rm\ -rf\ ./.TMPWORKDIR\;\);ssh -l parallel lo -- \(rm\ -f\ ./.TMPWORKDIR/abc-file.out\;\ sh\ -c\ \'rmdir\ ./.TMPWORKDIR/\ ./.parallel/tmp/\ ./.parallel/\ 2\>/dev/null\'\;rm\ -rf\ ./.TMPWORKDIR\;\);ssh -l parallel lo -- rm -rf .TMPWORKDIR; exit $_EXIT_status; + vendor://[[user][:password]@][host][:port]/[database[/table] +/bin/bash: vendor://[[user][:password]@][host][:port]/[database[/table]: No such file or directory + sqlite3:///%2Ftmp%2Fmydatabase/mytable +/bin/bash: sqlite3:///%2Ftmp%2Fmydatabase/mytable: No such file or directory + DBURL=sqlite3:///%2Ftmp%2Fmydatabase + DBURLTABLE=$DBURL/mytable + parallel --sqlandworker $DBURLTABLE echo ::: foo bar ::: baz quuz +foo baz +foo quuz +bar baz +bar quuz + sql $DBURL 'SELECT * FROM mytable ORDER BY Seq;' +Error: +SELECT * FROM mytable ORDER BY Seq; is not a valid DBURL + +sql [-hnr] [--table-size] [--db-size] [-p pass-through] [-s string] dburl [command] + parallel --sql $DBURLTABLE echo ::: foo bar ::: baz quuz +parallel: Error: echo is not a valid DBURL + parallel --sqlworker $DBURLTABLE echo ::: foo bar ::: baz quuz +parallel: Error: echo is not a valid DBURL cat num1000000 | parallel --pipe wc 165668 165668 1048571 149796 149796 1048572 @@ -789,7 +890,7 @@ JOB3 JOB4 qux/, END - echo /foo, bar/, /baz, qux/, | parallel -kN1 --recstart '/' --pipe echo JOB{#}\;cat\;echo END + echo /foo, bar/, /baz, qux/, | parallel -kN1 --recstart / --pipe echo JOB{#}\;cat\;echo END JOB1 /foo, barEND JOB2 @@ -799,13 +900,13 @@ JOB3 JOB4 /, END - echo /foo, bar/, /baz, qux/, | parallel -kN1 --recend ', ' --recstart '/' --pipe echo JOB{#}\;cat\;echo END + echo /foo, bar/, /baz, qux/, | parallel -kN1 --recend ', ' --recstart / --pipe echo JOB{#}\;cat\;echo END JOB1 /foo, bar/, END JOB2 /baz, qux/, END - echo foo,bar,_baz,__qux, | parallel -kN1 --regexp --recend ',_+' --pipe echo JOB{#}\;cat\;echo END + echo foo,bar,_baz,__qux, | parallel -kN1 --regexp --recend ,_+ --pipe echo JOB{#}\;cat\;echo END JOB1 foo,bar,_END JOB2 @@ -813,7 +914,7 @@ baz,__END JOB3 qux, END - echo foo,bar,_baz,__qux, | parallel -kN1 --rrs --regexp --recend ',_+' --pipe echo JOB{#}\;cat\;echo END + echo foo,bar,_baz,__qux, | parallel -kN1 --rrs --regexp --recend ,_+ --pipe echo JOB{#}\;cat\;echo END JOB1 foo,barEND JOB2 @@ -902,6 +1003,99 @@ Warning: unknown mime-type for "@ARGV\n" -- using "application/octet-stream" Error: no such file "@ARGV\n" perl_echo foo bar /bin/bash: perl_echo: command not found + #!/usr/bin/parallel --shebang-wrap /usr/bin/perl + + print "Arguments @ARGV\n"; +Warning: unknown mime-type for "Arguments @ARGV\n" -- using "application/octet-stream" +Error: no such file "Arguments @ARGV\n" + #!/usr/bin/parallel --shebang-wrap /usr/bin/python + + + print 'Arguments', str(sys.argv) +/bin/bash: -c: line 3: syntax error near unexpected token `(' +/bin/bash: -c: line 3: ` print 'Arguments', str(sys.argv)' + #!/usr/bin/parallel --shebang-wrap /bin/bash + + echo Arguments "$@" +Arguments + #!/usr/bin/parallel --shebang-wrap /bin/csh + + echo Arguments "$argv" +Arguments + #!/usr/bin/parallel --shebang-wrap /usr/bin/tclsh + + puts "Arguments $argv" +/bin/bash: line 2: puts: command not found + #!/usr/bin/parallel --shebang-wrap /usr/bin/Rscript --vanilla --slave + + args <- commandArgs(trailingOnly = TRUE) + print(paste("Arguments ",args)) +/bin/bash: -c: line 2: syntax error near unexpected token `(' +/bin/bash: -c: line 2: ` args <- commandArgs(trailingOnly = TRUE)' + #!/usr/bin/parallel --shebang-wrap ARG={} /usr/bin/gnuplot + + print "Arguments ", system('echo $ARG') +/bin/bash: -c: line 2: syntax error near unexpected token `(' +/bin/bash: -c: line 2: ` print "Arguments ", system('echo $ARG')' + #!/usr/bin/parallel --shebang-wrap /usr/bin/ruby + + print "Arguments " + puts ARGV +Warning: unknown mime-type for "Arguments " -- using "application/octet-stream" +Error: no such file "Arguments " +/bin/bash: line 3: puts: command not found + #!/usr/bin/parallel --shebang-wrap /usr/bin/octave + + printf ("Arguments"); + arg_list = argv (); + for i = 1:nargin + printf (" %s", arg_list{i}); + endfor + printf ("\n"); +/bin/bash: -c: line 2: syntax error near unexpected token `"Arguments"' +/bin/bash: -c: line 2: ` printf ("Arguments");' + #!/usr/bin/parallel --shebang-wrap /usr/bin/clisp + + (format t "~&~S~&" 'Arguments) + (format t "~&~S~&" *args*) +/bin/bash: -c: line 2: unexpected EOF while looking for matching `'' +/bin/bash: -c: line 4: syntax error: unexpected end of file + #!/usr/bin/parallel --shebang-wrap /usr/bin/php + +Arguments +/bin/bash: line 1: ?php: No such file or directory +/bin/bash: -c: line 3: syntax error near unexpected token `array_slice' +/bin/bash: -c: line 3: ` foreach(array_slice($argv,1) as $v)' + #!/usr/bin/parallel --shebang-wrap /usr/bin/node + var myArgs = process.argv.slice(2); + console.log('Arguments ', myArgs); +/bin/bash: -c: line 0: syntax error near unexpected token `(' +/bin/bash: -c: line 0: ` var myArgs = process.argv.slice(2);' + #!/usr/bin/parallel --shebang-wrap /usr/bin/lua + + io.write "Arguments" + for a = 1, #arg do + io.write(" ") + io.write(arg[a]) + end + print("") +/bin/bash: line 2: io.write: command not found +/bin/bash: -c: line 3: syntax error near unexpected token `=' +/bin/bash: -c: line 3: ` for a = 1, #arg do' + #!/usr/bin/parallel --shebang-wrap ARGV={} /usr/bin/csharp + + var argv = Environment.GetEnvironmentVariable("ARGV"); + print("Arguments "+argv); + +/bin/bash: -c: line 2: syntax error near unexpected token `(' +/bin/bash: -c: line 2: ` var argv = Environment.GetEnvironmentVariable("ARGV");' sem 'sleep 1; echo The first finished' && echo The first is now running in the background && sem 'sleep 1; echo The second finished' && @@ -910,7 +1104,6 @@ Error: no such file "@ARGV\n" The first is now running in the background The first finished The second is now running in the background -The second finished sem --fg 'sleep 1; echo The first finished' && echo The first finished running in the foreground && sem --fg 'sleep 1; echo The second finished' && @@ -918,7 +1111,6 @@ The second finished sem --wait The first finished The first finished running in the foreground -The second finished The second finished running in the foreground sem --id my_id -u 'echo First started; sleep 10; echo The first finished' First started @@ -932,7 +1124,6 @@ The first finished First started The first finished Third started -The second finished Fourth started The third finished The fourth finished @@ -983,18 +1174,6 @@ please cite: This helps funding further development; AND IT WON'T COST YOU A CENT. If you pay 10000 EUR you should feel free to use GNU Parallel without citing. - parallel --version -GNU parallel VERSION -Copyright (C) 2007,2008,2009,2010,2011,2012,2013,2014,2015 Ole Tange -and Free Software Foundation, Inc. -License GPLv3+: GNU GPL version 3 or later -This is free software: you are free to change and redistribute it. -GNU parallel comes with no warranty. - -Web site: http://www.gnu.org/software/parallel - -When using programs that use GNU Parallel to process data for publication -please cite as described in 'parallel --bibtex'. parallel --minversion VERSION && echo Your version is at least VERSION. VERSION Your version is at least VERSION.