From 6b13c5d9280f04453805fa3c8fd339dbbe26c047 Mon Sep 17 00:00:00 2001 From: Ole Tange Date: Thu, 17 Feb 2022 22:39:01 +0100 Subject: [PATCH] parallel: ssh command hexed to a script in $PARALLEL_REMOTE_TMPDIR. --- doc/release_new_version | 1 + src/parallel | 99 +++-- testsuite/tests-to-run/parallel-centos3.sh | 3 +- testsuite/tests-to-run/parallel-local-10s.sh | 1 - testsuite/tests-to-run/parallel-local-300s.sh | 9 +- testsuite/tests-to-run/parallel-local-30s.sh | 38 +- testsuite/tests-to-run/parallel-local-3s.sh | 2 +- testsuite/tests-to-run/parallel-local-race02.sh | 4 +- testsuite/tests-to-run/parallel-local-ssh1.sh | 13 +- testsuite/tests-to-run/parallel-local-ssh4.sh | 6 +- testsuite/tests-to-run/parallel-local-ssh5.sh | 2 +- testsuite/tests-to-run/parallel-local-ssh7.sh | 120 +++--- testsuite/tests-to-run/parallel-local-ssh9.sh | 4 +- testsuite/tests-to-run/parallel-tutorial.sh | 6 + testsuite/tests-to-run/test19.sh | 2 +- testsuite/tests-to-run/test47.sh | 6 +- testsuite/wanted-results/parallel-local-10s | 14 +- testsuite/wanted-results/parallel-local-1s | 6 +- testsuite/wanted-results/parallel-local-30s | 14 +- testsuite/wanted-results/parallel-local-3s | 24 +- testsuite/wanted-results/parallel-local-race01 | 2 +- testsuite/wanted-results/parallel-local-race02 | 6 +- testsuite/wanted-results/parallel-local-ssh2 | 36 +- testsuite/wanted-results/parallel-local-ssh4 | 2 + testsuite/wanted-results/parallel-local-ssh5 | 338 ++++++++-------- testsuite/wanted-results/parallel-local-ssh7 | 509 ++++++++---------------- testsuite/wanted-results/parallel-local13 | 1 + testsuite/wanted-results/parallel-local22 | 14 +- testsuite/wanted-results/parallel-local23 | 5 +- testsuite/wanted-results/parallel-local7 | 32 +- testsuite/wanted-results/parallel-local9 | 2 +- testsuite/wanted-results/parallel-macos | 117 +++++- testsuite/wanted-results/parallel-tutorial | 8 +- testsuite/wanted-results/test19 | 4 +- 34 files changed, 732 insertions(+), 718 deletions(-) rewrite testsuite/wanted-results/parallel-macos (100%) diff --git a/doc/release_new_version b/doc/release_new_version index 97fb57dc..de887d1e 100644 --- a/doc/release_new_version +++ b/doc/release_new_version @@ -276,6 +276,7 @@ New in this release: News about GNU Parallel: +https://kim.uni-hohenheim.de/en/96097?tx_ttnews%5Btt_news%5D=53919&cHash=985f4f4ac1a166d180d81f6e9be832a3 https://blog.csdn.net/qq_38197157/article/details/112596389 https://www.freelancer.com/projects/linux/gnu-parallel-processing-for-data/?ngsw-bypass=&w=f diff --git a/src/parallel b/src/parallel index a6a7d5f3..056e6b75 100755 --- a/src/parallel +++ b/src/parallel @@ -1939,7 +1939,6 @@ sub parse_options(@) { } if(defined $opt::version) { version(); wait_and_exit(0); } if(defined $opt::record_env) { record_env(); wait_and_exit(0); } - if(defined $opt::show_limits) { show_limits(); } if(@opt::sshlogin) { @Global::sshlogin = @opt::sshlogin; } if(@opt::sshloginfile) { read_sshloginfiles(@opt::sshloginfile); } if(@opt::return) { push @Global::ret_files, @opt::return; } @@ -2214,6 +2213,7 @@ sub parse_options(@) { } parse_sshlogin(); + if(defined $opt::show_limits) { show_limits(); } if(remote_hosts() and ($opt::X or $opt::m or $opt::xargs)) { # As we do not know the max line length on the remote machine @@ -2412,6 +2412,7 @@ sub init_globals() { $Global::max_jobs_running = 0; $Global::job_already_run = ''; $ENV{'TMPDIR'} ||= "/tmp"; + $ENV{'PARALLEL_REMOTE_TMPDIR'} ||= "/tmp"; $ENV{'OLDPWD'} = $ENV{'PWD'}; if(not $ENV{HOME}) { # $ENV{HOME} is sometimes not set if called from PHP @@ -4239,6 +4240,17 @@ sub parse_sshlogin() { ::min($Global::minimal_command_line_length, $sshlogin->maxlength()); $Global::host{$sshlogin_string} = $sshlogin; } + $Global::usable_command_line_length = + # Usable len = maxlen - 3000 for wrapping, div 2 for hexing + int(($Global::minimal_command_line_length - 3000)/2); + if($opt::max_chars) { + if($opt::max_chars <= $Global::usable_command_line_length) { + $Global::usable_command_line_length = $opt::max_chars; + } else { + ::warning("Value for option -s should be < ". + $Global::usable_command_line_length."."); + } + } if(@allowed_hostgroups) { # Remove hosts that are not in these groups while (my ($string, $sshlogin) = each %Global::host) { @@ -4436,9 +4448,6 @@ sub filter_hosts() { } $obj->set_time_to_login($time_to_login_ref->{$sshlogin}); $obj->set_maxlength($maxlen_ref->{$sshlogin}); - $Global::minimal_command_line_length = - ::min($Global::minimal_command_line_length, - int($maxlen_ref->{$sshlogin}/2)); ::debug("init", "Timing from -S:$sshlogin ", " nsockets:",$nsockets_ref->{$sshlogin}, " ncores:", $ncores_ref->{$sshlogin}, @@ -5356,7 +5365,7 @@ sub citation() { sub show_limits() { # Returns: N/A print("Maximal size of command: ",Limits::Command::real_max_length(),"\n", - "Maximal used size of command: ",Limits::Command::max_length(),"\n", + "Maximal usable size of command: ",$Global::usable_command_line_length,"\n", "\n", "Execution of will continue now, and it will try to read its input\n", "and run commands; if this is not what you wanted to happen, please\n", @@ -9443,23 +9452,39 @@ sub sshlogin_wrap($) { $monitor_parent_sshd_script = # This will be packed in ', so only use " ::spacefree(0,'$shell = "'.($ENV{'PARALLEL_SHELL'} || '$ENV{SHELL}').'";'. - '$tmpdir = "'.::perl_quote_scalar($ENV{'TMPDIR'}).'";'. + '$tmpdir = $ENV{"TMPDIR"} || "'. + ::perl_quote_scalar($ENV{'PARALLEL_REMOTE_TMPDIR'}).'";'. '$nice = '.$opt::nice.';'. '$termseq = "'.$opt::termseq.'";'. + # } q{ + # Check that $tmpdir is writable + -w $tmpdir || + die("$tmpdir\040is\040not\040writable.". + "\040Set\040PARALLEL_REMOTE_TMPDIR"); # Set $PARALLEL_TMP to a non-existent file name in $TMPDIR do { $ENV{PARALLEL_TMP} = $tmpdir."/par". join"", map { (0..9,"a".."z","A".."Z")[rand(62)] } (1..5); } while(-e $ENV{PARALLEL_TMP}); + # Set $script to a non-existent file name in $TMPDIR + do { + $script = $tmpdir."/par". + join"", map { (0..9,"a".."z","A".."Z")[rand(62)] } (1..5); + } while(-e $script); + open($fh,">",$script) || die; + # \040 = space - but we remove spaces in the script + # ' needed due to rc-shell + print($fh("rm\040\'$script\'\n",$bashfunc.$cmd)); + close $fh; $SIG{CHLD} = sub { $done = 1; }; $pid = fork; unless($pid) { # Make own process group to be able to kill HUP it later eval { setpgrp }; eval { setpriority(0,0,$nice) }; - exec $shell, "-c", ($bashfunc."@ARGV"); - die "exec: $!\n"; + exec($shell,$script); + die("exec failed: $!"); } my $parent = getppid; do { @@ -9640,24 +9665,32 @@ sub sshlogin_wrap($) { qq{print(STDERR "parallel: Cannot chdir to $wd\\n") && exit 255;}; } my ($csh_friendly,$envset,$bashfuncset) = env_as_eval(); - my $remote_command = $pwd.$envset.$bashfuncset. - '@ARGV="'.::perl_quote_scalar($command).'";'. - monitor_parent_sshd_script(); - $quoted_remote_command = "perl -e ". ::Q($remote_command); - my $dq_remote_command = ::Q($quoted_remote_command); - if(length $dq_remote_command > 999 - or - not $csh_friendly - or - $command =~ /\n/) { - # csh does not deal well with > 1000 chars in one word - # csh does not deal well with $ENV with \n - $quoted_remote_command = - "perl -e ". ::Q(::Q(base64_zip_eval()))." ". - join" ",::shell_quote(::shell_quote(string_zip_base64($remote_command))); - } else { - $quoted_remote_command = $dq_remote_command; - } + my $cmd = $command; + # q// does not quote \, so we must do that + $cmd =~ s/\\/\\\\/g; + + my $remote_command = + ($pwd.$envset.$bashfuncset. + '$cmd='."q\0".$cmd."\0;". + monitor_parent_sshd_script()); + + # "#" is needed because Perl on MacOS X adds NULs + # when running pack q/H10000000/ + my $hex = unpack "H*", $remote_command."#"; + # csh does not deal well with > 1000 chars in one word + # Insert space every 1000 char + $hex =~ s/\G.{1000}\K/ /sg; + # Explanation: + # Write this without special chars: eval pack 'H*', join '',@ARGV + # GNU_Parallel = String so people can see this is from GNU Parallel + # eval+ = way to write 'eval ' without space (gives warning) + # pack+ = way to write 'pack ' without space + # q/H10000000/,= almost the same as "H*" but does not use * + # join+q//, = join '', + $remote_command = 'GNU_Parallel,eval+pack+q/H10000000/,join+q//,@ARGV ' + . $hex; + + $quoted_remote_command = "perl -X -e ". $remote_command; my $sshcmd = $sshlogin->sshcommand(); my ($pre,$post,$cleanup)=("","",""); @@ -11264,7 +11297,7 @@ sub slot($) { # Add arguments from arg_queue until the number of arguments or # max line length is reached # Uses: - # $Global::minimal_command_line_length + # $Global::usable_command_line_length # $opt::cat # $opt::fifo # $Global::JobQueue @@ -11274,8 +11307,7 @@ sub slot($) { # Returns: N/A my $self = shift; my $next_arg; - my $max_len = $Global::minimal_command_line_length - || Limits::Command::max_length(); + my $max_len = $Global::usable_command_line_length || die; if($^O eq "darwin") { # Darwin's limit is affected by: # * number of environment names (variables+functions) @@ -12317,13 +12349,6 @@ sub max_length($) { rename $len_cache.$$, $len_cache || ::die_bug("rename cache file"); } $Limits::Command::line_max_len = tmux_length($cached_limit); - if($opt::max_chars) { - if($opt::max_chars <= $cached_limit) { - $Limits::Command::line_max_len = $opt::max_chars; - } else { - ::warning("Value for -s option should be < $cached_limit."); - } - } } return int($Limits::Command::line_max_len); } @@ -12417,7 +12442,7 @@ sub tmux_length($) { ::wait_and_exit(255); } my @out; - for my $l (1, 2020, 16320, 100000, $len) { + for my $l (1, 2020, 16320, 30000, $len) { my $tmpfile = ::tmpname("tms"); my $tmuxcmd = $ENV{'PARALLEL_TMUX'}. " -S $tmpfile new-session -d -n echo $l". diff --git a/testsuite/tests-to-run/parallel-centos3.sh b/testsuite/tests-to-run/parallel-centos3.sh index 1c74743b..595b4b6b 100644 --- a/testsuite/tests-to-run/parallel-centos3.sh +++ b/testsuite/tests-to-run/parallel-centos3.sh @@ -33,8 +33,9 @@ stdout ping -w 1 -c 1 centos3 >/dev/null || ( cd vagrant/tange/centos3/ 2>/dev/null cd ../vagrant/tange/centos3/ 2>/dev/null cd ../../../.. + ssh $SSHLOGIN1 'mkdir -p .parallel bin; touch .parallel/will-cite' scp -q .*/src/{parallel,sem,sql,niceload,env_parallel*} $SSHLOGIN1:bin/ - ssh $SSHLOGIN1 'touch .parallel/will-cite; mkdir -p bin' + ssh $SSHLOGIN1 'echo PATH=\$PATH:\$HOME/bin >> .bashrc' # Allow login from centos3 to $SSHLOGIN2 (that is shellshock hardened) ssh $SSHLOGIN1 cat .ssh/id_rsa.pub | ssh $SSHLOGIN2 'cat >>.ssh/authorized_keys' ssh $SSHLOGIN1 'cat .ssh/id_rsa.pub >>.ssh/authorized_keys; chmod 600 .ssh/authorized_keys' diff --git a/testsuite/tests-to-run/parallel-local-10s.sh b/testsuite/tests-to-run/parallel-local-10s.sh index f77583d7..615dff15 100644 --- a/testsuite/tests-to-run/parallel-local-10s.sh +++ b/testsuite/tests-to-run/parallel-local-10s.sh @@ -641,7 +641,6 @@ export -f $(compgen -A function | grep par_) compgen -A function | grep par_ | LC_ALL=C sort | parallel --timeout 1000% -j10 --tag -k --joblog /tmp/jl-`basename $0` '{} 2>&1' | perl -pe 's/,31,0/,15,0/' | - perl -pe 's/131\d\d\d/131XXX/' | # Replace $PWD with . even if given as ~/... perl -pe 's:~:'$HOME':g' | perl -pe 's:'$PWD':.:g' | diff --git a/testsuite/tests-to-run/parallel-local-300s.sh b/testsuite/tests-to-run/parallel-local-300s.sh index 5ffde30f..65dc5478 100644 --- a/testsuite/tests-to-run/parallel-local-300s.sh +++ b/testsuite/tests-to-run/parallel-local-300s.sh @@ -118,6 +118,7 @@ par_test_build_and_install() { rm -rf parallel-20??????/ tar xf ~/privat/parallel/$LAST cd parallel-20??????/ + rm -rf /tmp/parallel-install echo "### Test normal build and install" # Make sure files depending on *.pod have to be rebuilt @@ -125,7 +126,9 @@ par_test_build_and_install() { ./configure --prefix=/tmp/parallel-install && (stdout nice make -j3 >/dev/null; stdout nice make install) | - perl -pe 's/make\[\d\]/make[0]/g;s/\d{8}/00000000/g' + perl -pe 's/make\[\d\]/make[0]/g; + s/rm: cannot remove.*\n//; + s/\d{8}/00000000/g' echo '### Test installation missing pod2*' parallel which ::: pod2html pod2man pod2texi pod2pdf | @@ -135,7 +138,9 @@ par_test_build_and_install() { ./configure --prefix=/tmp/parallel-install && (stdout nice make -j3 >/dev/null; stdout nice make install) | - perl -pe 's/make\[\d\]/make[0]/g;s/\d{8}/00000000/g' + perl -pe 's/make\[\d\]/make[0]/g; + s/rm: cannot remove.*\n//; + s/\d{8}/00000000/g' parallel which {}.hidden ::: pod2html pod2man pod2texi pod2pdf | sudo parallel mv {} {.} diff --git a/testsuite/tests-to-run/parallel-local-30s.sh b/testsuite/tests-to-run/parallel-local-30s.sh index ab34875d..b5d2b29e 100755 --- a/testsuite/tests-to-run/parallel-local-30s.sh +++ b/testsuite/tests-to-run/parallel-local-30s.sh @@ -8,7 +8,7 @@ # Each should be taking 30-100s and be possible to run in parallel # I.e.: No race conditions, no logins -par_shard() { +par_shard_a() { echo '### --shard' # Each of the 5 lines should match: # ##### ##### ###### @@ -23,7 +23,10 @@ par_shard() { } shard_on_col 1 shard_on_col 2 +} +par_shard_b() { + echo '### --shard' shard_on_col_name() { colname=$1 col=$2 @@ -33,7 +36,10 @@ par_shard() { } shard_on_col_name A 1 shard_on_col_name B 2 +} +par_shard_c() { + echo '### --shard' shard_on_col_expr() { colexpr="$1" col=$2 @@ -43,7 +49,9 @@ par_shard() { } shard_on_col_expr '1 $_%=3' 1 shard_on_col_expr '2 $_%=3' 2 +} +par_shard_d() { shard_on_col_name_expr() { colexpr="$1" col=$2 @@ -55,10 +63,10 @@ par_shard() { shard_on_col_name_expr 'B $_%=3' 2 echo '*** broken' - # Shorthand for --pipe -j+0 - seq 200000 | parallel --pipe --shard 1 wc | - perl -pe 's/(.*\d{5,}){3}/OK/' - # Combine with arguments + # Should be shorthand for --pipe -j+0 + #seq 200000 | parallel --pipe --shard 1 wc | + # perl -pe 's/(.*\d{5,}){3}/OK/' + # Combine with arguments (should compute -j10 given args) seq 200000 | parallel --pipe --shard 1 echo {}\;wc ::: {1..5} ::: a b | perl -pe 's/(.*\d{5,}){3}/OK/' } @@ -440,7 +448,7 @@ par_max_length_len_128k() { parallel -X echo {}aa{} | head -n 1 | wc -c seq 1 60000 | perl -pe 's/$/.gif/' | parallel -X echo {} aa {} | head -n 1 | wc -c - ) | perl -pe 's/131\d\d\d/131xxx/g' + ) | perl -pe 's/(\d\d+)\d\d\d/${1}xxx/g' } par_round_robin_blocks() { @@ -530,15 +538,19 @@ par_plus_dyn_repl() { par_keeporder_roundrobin() { echo 'bug #50081: --keep-order --round-robin should give predictable results' + . `which env_parallel.bash` - export PARALLEL="-j13 --block 1m --pipe --roundrobin" - random1G() { - < /dev/zero openssl enc -aes-128-ctr -K 1234 -iv 1234 2>/dev/null | - head -c 1G; + run_roundrobin() { + random1G() { + < /dev/zero openssl enc -aes-128-ctr -K 1234 -iv 1234 2>/dev/null | + head -c 1G; + } + random1G | + parallel $1 -j13 --block 1m --pipe --roundrobin 'echo {#} $(md5sum)' | + sort } - a=$(random1G | parallel -k 'echo {#} $(md5sum)' | sort) - b=$(random1G | parallel -k 'echo {#} $(md5sum)' | sort) - c=$(random1G | parallel 'echo {#} $(md5sum)' | sort) + env_parset a,b,c run_roundrobin ::: -k -k '' + if [ "$a" == "$b" ] ; then # Good: -k should be == -k if [ "$a" == "$c" ] ; then diff --git a/testsuite/tests-to-run/parallel-local-3s.sh b/testsuite/tests-to-run/parallel-local-3s.sh index 4c842968..e41270c3 100644 --- a/testsuite/tests-to-run/parallel-local-3s.sh +++ b/testsuite/tests-to-run/parallel-local-3s.sh @@ -187,7 +187,7 @@ par_show_limits() { (echo b; echo c; echo f) | parallel -j1 -kX --show-limits -s 100 echo {}ar echo "### BUG: empty lines with --show-limit" echo | stdout parallel --show-limits - ) | perl -pe 's/131\d\d\d/131xxx/' + ) | perl -pe 's/(\d+)\d\d\d/${1}xxx/' } par_test_delimiter() { diff --git a/testsuite/tests-to-run/parallel-local-race02.sh b/testsuite/tests-to-run/parallel-local-race02.sh index f016ef0b..96107ef7 100644 --- a/testsuite/tests-to-run/parallel-local-race02.sh +++ b/testsuite/tests-to-run/parallel-local-race02.sh @@ -86,10 +86,10 @@ par_PARALLEL_RSYNC_OPTS() { echo '### test rsync opts' touch parallel_rsync_opts.test parallel --rsync-opts -rlDzRRRR -vv -S parallel@lo --trc {}.out touch {}.out ::: parallel_rsync_opts.test | - perl -ne 's/(rsync .*?RRRR)/print $1/ge' + perl -nE 's/(rsync .*?RRRR)/say $1/ge' export PARALLEL_RSYNC_OPTS=-zzrrllddRRRR parallel -vv -S parallel@lo --trc {}.out touch {}.out ::: parallel_rsync_opts.test | - perl -ne 's/(rsync .*?RRRR)/print $1/ge' + perl -nE 's/(rsync .*?RRRR)/say $1/ge' rm parallel_rsync_opts.test parallel_rsync_opts.test.out echo } diff --git a/testsuite/tests-to-run/parallel-local-ssh1.sh b/testsuite/tests-to-run/parallel-local-ssh1.sh index a8fbcbba..86fd3950 100644 --- a/testsuite/tests-to-run/parallel-local-ssh1.sh +++ b/testsuite/tests-to-run/parallel-local-ssh1.sh @@ -229,7 +229,7 @@ D hgrp=csh@lo+c+lo D hgrp=csh@lo+lo+c D hgrp=lo+c+csh@lo D hgrp=lo+csh@lo+c -E agrp=lo+b+c+bash@lo+csh@lo +E agrp=b+bash@lo+c+csh@lo+lo E agrp=b+bash@lo+c+lo+csh@lo E agrp=b+bash@lo+csh@lo+c+lo E agrp=b+bash@lo+csh@lo+lo+c @@ -238,6 +238,7 @@ E agrp=b+bash@lo+lo+csh@lo+c E agrp=b+c+bash@lo+csh@lo+lo E agrp=b+c+bash@lo+lo+csh@lo E agrp=b+c+csh@lo+bash@lo+lo +E agrp=b+c+csh@lo+lo+bash@lo E agrp=b+c+lo+bash@lo+csh@lo E agrp=b+c+lo+csh@lo+bash@lo E agrp=b+csh@lo+bash@lo+c+lo @@ -253,6 +254,7 @@ E agrp=b+lo+c+csh@lo+bash@lo E agrp=b+lo+csh@lo+bash@lo+c E agrp=b+lo+csh@lo+c+bash@lo E agrp=bash@lo+b+c+csh@lo+lo +E agrp=bash@lo+b+c+lo+csh@lo E agrp=bash@lo+b+csh@lo+c+lo E agrp=bash@lo+b+csh@lo+lo+c E agrp=bash@lo+b+lo+c+csh@lo @@ -277,18 +279,20 @@ E agrp=bash@lo+lo+csh@lo+b+c E agrp=bash@lo+lo+csh@lo+c+b E agrp=c+b+bash@lo+csh@lo+lo E agrp=c+b+bash@lo+lo+csh@lo +E agrp=c+b+csh@lo+bash@lo+lo E agrp=c+b+csh@lo+lo+bash@lo E agrp=c+b+lo+bash@lo+csh@lo E agrp=c+b+lo+csh@lo+bash@lo E agrp=c+bash@lo+b+csh@lo+lo -E agrp=c+bash@lo+csh@lo+b+lo E agrp=c+bash@lo+b+lo+csh@lo +E agrp=c+bash@lo+csh@lo+b+lo E agrp=c+bash@lo+csh@lo+lo+b E agrp=c+bash@lo+lo+b+csh@lo E agrp=c+bash@lo+lo+csh@lo+b E agrp=c+csh@lo+b+bash@lo+lo E agrp=c+csh@lo+b+lo+bash@lo E agrp=c+csh@lo+bash@lo+b+lo +E agrp=c+csh@lo+bash@lo+lo+b E agrp=c+csh@lo+lo+b+bash@lo E agrp=c+csh@lo+lo+bash@lo+b E agrp=c+lo+b+bash@lo+csh@lo @@ -296,10 +300,12 @@ E agrp=c+lo+b+csh@lo+bash@lo E agrp=c+lo+bash@lo+b+csh@lo E agrp=c+lo+bash@lo+csh@lo+b E agrp=c+lo+csh@lo+b+bash@lo +E agrp=c+lo+csh@lo+bash@lo+b E agrp=csh@lo+b+bash@lo+c+lo E agrp=csh@lo+b+bash@lo+lo+c E agrp=csh@lo+b+c+bash@lo+lo E agrp=csh@lo+b+c+lo+bash@lo +E agrp=csh@lo+b+lo+bash@lo+c E agrp=csh@lo+b+lo+c+bash@lo E agrp=csh@lo+bash@lo+b+c+lo E agrp=csh@lo+bash@lo+b+lo+c @@ -321,6 +327,7 @@ E agrp=csh@lo+lo+c+b+bash@lo E agrp=csh@lo+lo+c+bash@lo+b E agrp=lo+b+bash@lo+c+csh@lo E agrp=lo+b+bash@lo+csh@lo+c +E agrp=lo+b+c+bash@lo+csh@lo E agrp=lo+b+c+csh@lo+bash@lo E agrp=lo+b+csh@lo+bash@lo+c E agrp=lo+b+csh@lo+c+bash@lo @@ -328,6 +335,7 @@ E agrp=lo+bash@lo+b+c+csh@lo E agrp=lo+bash@lo+b+csh@lo+c E agrp=lo+bash@lo+c+b+csh@lo E agrp=lo+bash@lo+c+csh@lo+b +E agrp=lo+bash@lo+csh@lo+b+c E agrp=lo+bash@lo+csh@lo+c+b E agrp=lo+c+b+bash@lo+csh@lo E agrp=lo+c+b+csh@lo+bash@lo @@ -335,6 +343,7 @@ E agrp=lo+c+bash@lo+b+csh@lo E agrp=lo+c+bash@lo+csh@lo+b E agrp=lo+c+csh@lo+b+bash@lo E agrp=lo+c+csh@lo+bash@lo+b +E agrp=lo+csh@lo+b+bash@lo+c E agrp=lo+csh@lo+b+c+bash@lo E agrp=lo+csh@lo+bash@lo+b+c E agrp=lo+csh@lo+bash@lo+c+b diff --git a/testsuite/tests-to-run/parallel-local-ssh4.sh b/testsuite/tests-to-run/parallel-local-ssh4.sh index ecf29e17..fc204321 100644 --- a/testsuite/tests-to-run/parallel-local-ssh4.sh +++ b/testsuite/tests-to-run/parallel-local-ssh4.sh @@ -115,8 +115,10 @@ par_tmux_different_shells() { par_tmux_length() { echo '### works' - stdout parallel -Sparallel@lo --tmux echo ::: \\\\\\\"\\\\\\\"\\\;\@ | grep -v 'See output' - stdout parallel -Sparallel@lo --tmux echo ::: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx | grep -v 'See output' + stdout parallel -Sparallel@lo --tmux echo ::: \\\\\\\"\\\\\\\"\\\;\@ | + perl -pe 's:/tmp/\S+::' + stdout parallel -Sparallel@lo --tmux echo ::: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx | + perl -pe 's:/tmp/\S+::' echo '### These blocked due to length' stdout parallel -Slo --tmux echo ::: \\\\\\\"\\\\\\\"\\\;\@ | grep -v 'See output' diff --git a/testsuite/tests-to-run/parallel-local-ssh5.sh b/testsuite/tests-to-run/parallel-local-ssh5.sh index 3378e780..05170069 100644 --- a/testsuite/tests-to-run/parallel-local-ssh5.sh +++ b/testsuite/tests-to-run/parallel-local-ssh5.sh @@ -83,7 +83,7 @@ par_command_len_shellquote() { export -f outer stdout parallel --tag -k outer ::: '-Slo -j10' '' | - perl -pe 's/131\d\d\d/131xxx/g'; + perl -pe 's/(\d\d+)\d\d\d/${1}xxx/g'; } export -f $(compgen -A function | grep par_) diff --git a/testsuite/tests-to-run/parallel-local-ssh7.sh b/testsuite/tests-to-run/parallel-local-ssh7.sh index 2c6641d9..e8fac8a2 100755 --- a/testsuite/tests-to-run/parallel-local-ssh7.sh +++ b/testsuite/tests-to-run/parallel-local-ssh7.sh @@ -844,7 +844,8 @@ _EOF # Old versions of fish sometimes throw up bugs all over, # but seem to work OK otherwise. So ignore these errors. ssh fish@lo "$myscript" 2>&1 | - perl -ne '/fish:|fish\(/ and next; print' + perl -ne '/fish:|fish\(/ and next; print' | + perl -pe 's:/tmp/par.....:script:' } par_ksh_underscore() { @@ -1648,14 +1649,14 @@ _EOF par_ash_environment_too_big() { myscript=$(cat <<'_EOF' echo 'bug #50815: env_parallel should warn if the environment is too big' - len_var=100+50-25 - len_var_remote=100-50+25+12+6+3 - len_var_quote=100-50+25-12-6+3-2 - len_var_quote_remote=100-50-25+12+6-3 - len_fun=100+50+25+12+6-3 - len_fun_remote=100-50+25+12-6+3 - len_fun_quote=100+50-25-12 - len_fun_quote_remote=100-50+25+12-6 + len_var=63 + len_var_remote=47 + len_var_quote=31 + len_var_quote_remote=21 + len_fun=1 + len_fun_remote=1 + len_fun_quote=1 + len_fun_quote_remote=1 . `which env_parallel.ash`; @@ -1706,7 +1707,7 @@ par_ash_environment_too_big() { eval 'bigfunc() { a="'"$(repeat \" $len_fun_quote+10)"'"; };' env_parallel echo ::: fail_bigfunc_quote-not-supported - eval 'bigfunc() { a="'"$(repeat \" $len_fun_quote+10)"'"; };' + eval 'bigfunc() { a="'"$(repeat \" $len_fun_quote_remote+10)"'"; };' env_parallel -S lo echo ::: fail_bigfunc_quote_remote-not-supported bigfunc() { true; } @@ -1719,14 +1720,14 @@ par_bash_environment_too_big() { myscript=$(cat <<'_EOF' echo 'bug #50815: env_parallel should warn if the environment is too big' len_overhead=-$( (shopt;alias;typeset -f;typeset -p) | wc -c)/1000 - len_var=$len_overhead+108 - len_var_remote=$len_overhead+50+25 - len_var_quote=$len_overhead+50+25-12-6 - len_var_quote_remote=$len_overhead+50-25+12+6-3 - len_fun=$len_overhead+110 - len_fun_remote=$len_overhead+50+25 - len_fun_quote=$len_overhead+110 - len_fun_quote_remote=$len_overhead+50+25 + len_var=$len_overhead+56 + len_var_remote=$len_overhead+40 + len_var_quote=$len_overhead+31 + len_var_quote_remote=$len_overhead+22 + len_fun=$len_overhead+56 + len_fun_remote=$len_overhead+40 + len_fun_quote=$len_overhead+56 + len_fun_quote_remote=$len_overhead+40 . `which env_parallel.bash`; @@ -1777,7 +1778,7 @@ par_bash_environment_too_big() { eval 'bigfunc() { a="'"$(repeat \" $len_fun_quote+20)"'"; };' env_parallel echo ::: fail_bigfunc_quote - eval 'bigfunc() { a="'"$(repeat \" $len_fun_quote+20)"'"; };' + eval 'bigfunc() { a="'"$(repeat \" $len_fun_quote_remote+20)"'"; };' env_parallel -S lo echo ::: fail_bigfunc_quote_remote bigfunc() { true; } @@ -1793,14 +1794,14 @@ par_csh_environment_too_big() { par_dash_environment_too_big() { myscript=$(cat <<'_EOF' echo 'bug #50815: env_parallel should warn if the environment is too big' - len_var=100+50-25 - len_var_remote=100-50+25+12+6+3 - len_var_quote=100-50+25-12-6+3-2 - len_var_quote_remote=100-50-25+12+6-3 - len_fun=100+50+25+12+6-3 - len_fun_remote=100-50+25+12-6+3 - len_fun_quote=100+50-25-12 - len_fun_quote_remote=100-50+25+12-6 + len_var=63 + len_var_remote=47 + len_var_quote=31 + len_var_quote_remote=21 + len_fun=1 + len_fun_remote=1 + len_fun_quote=1 + len_fun_quote_remote=1 . `which env_parallel.dash`; @@ -1851,7 +1852,7 @@ par_dash_environment_too_big() { eval 'bigfunc() { a="'"$(repeat \" $len_fun_quote+10)"'"; };' env_parallel echo ::: fail_bigfunc_quote-not-supported - eval 'bigfunc() { a="'"$(repeat \" $len_fun_quote+10)"'"; };' + eval 'bigfunc() { a="'"$(repeat \" $len_fun_quote_remote+10)"'"; };' env_parallel -S lo echo ::: fail_bigfunc_quote_remote-not-supported bigfunc() { true; } @@ -1870,15 +1871,15 @@ par_ksh_environment_too_big() { echo 'bug #50815: env_parallel should warn if the environment is too big' len_functions=-$(functions|wc -c)/1000 len_variables=-$(typeset -p | wc -c)/1000 - len_var=$len_variables+100 - len_var_remote=$len_variables+100-50+25-12+6 - len_var_quote=$len_variables+100 - len_var_quote_remote=$len_variables+100-50+25-12 - len_fun=$len_functions+100 - len_fun_remote=$len_functions+100-50+25-12+6 - len_fun_quote=$len_functions+100 - len_fun_quote_remote=$len_functions+100-50 - + len_var=$len_variables+45 + len_var_remote=$len_variables+30 + len_var_quote=$len_variables+43 + len_var_quote_remote=$len_variables+30 + len_fun=$len_functions+43 + len_fun_remote=$len_functions+29 + len_fun_quote=$len_functions+43 + len_fun_quote_remote=$len_functions+29 + . `which env_parallel.ksh`; repeat() { @@ -1928,7 +1929,7 @@ par_ksh_environment_too_big() { eval 'bigfunc() { a="'"$(repeat \" $len_fun_quote+20)"'"; };' env_parallel echo ::: fail_bigfunc_quote - eval 'bigfunc() { a="'"$(repeat \" $len_fun_quote+20)"'"; };' + eval 'bigfunc() { a="'"$(repeat \" $len_fun_quote_remote+20)"'"; };' env_parallel -S lo echo ::: fail_bigfunc_quote_remote bigfunc() { true; } @@ -1940,15 +1941,15 @@ _EOF par_mksh_environment_too_big() { myscript=$(cat <<'_EOF' echo 'bug #50815: env_parallel should warn if the environment is too big' - len_var=100+6 - len_var_remote=100-50+25+12-6-3-2 - len_var_quote=100+6 - len_var_quote_remote=100-50+25-12 - len_fun=100+6 - len_fun_remote=100-50+25-6+3 - len_fun_quote=100+6 - len_fun_quote_remote=100-50+25 - + len_var=47 + len_var_remote=31 + len_var_quote=47 + len_var_quote_remote=31 + len_fun=28 + len_fun_remote=13 + len_fun_quote=28 + len_fun_quote_remote=23 + . `which env_parallel.mksh`; repeat() { @@ -1999,7 +2000,7 @@ par_mksh_environment_too_big() { eval 'bigfunc() { a="'"$(repeat \" $len_fun_quote+20)"'"; };' env_parallel echo ::: fail_bigfunc_quote - eval 'bigfunc() { a="'"$(repeat \" $len_fun_quote+10)"'"; };' + eval 'bigfunc() { a="'"$(repeat \" $len_fun_quote_remote+10)"'"; };' env_parallel -S lo echo ::: fail_bigfunc_quote_remote bigfunc() { true; } @@ -2011,14 +2012,14 @@ _EOF par_sh_environment_too_big() { myscript=$(cat <<'_EOF' echo 'bug #50815: env_parallel should warn if the environment is too big' - len_var=100+50-25 - len_var_remote=100-12 - len_var_quote=100-50+6 - len_var_quote_remote=100-50-6 - len_fun=100+25 - len_fun_remote=100-50+25-6+3+10 - len_fun_quote=100+6+10 - len_fun_quote_remote=100-50+25+12-6 + len_var=63 + len_var_remote=47 + len_var_quote=31 + len_var_quote_remote=21 + len_fun=1 # unsupported + len_fun_remote=1 # unsupported + len_fun_quote=1 # unsupported + len_fun_quote_remote=1 # unsupported . `which env_parallel.sh`; @@ -2069,7 +2070,7 @@ par_sh_environment_too_big() { eval 'bigfunc() { a="'"$(repeat \" $len_fun_quote+10)"'"; };' env_parallel echo ::: fail_bigfunc_quote-not-supported - eval 'bigfunc() { a="'"$(repeat \" $len_fun_quote+10)"'"; };' + eval 'bigfunc() { a="'"$(repeat \" $len_fun_quote_remote+10)"'"; };' env_parallel -S lo echo ::: fail_bigfunc_quote_remote-not-supported bigfunc() { true; } @@ -2940,7 +2941,8 @@ par_fish_env_parallel_session() { set -e PARALLEL_IGNORED_NAMES _EOF ) - ssh fish@lo "$myscript" + ssh fish@lo "$myscript" 2>&1 | + perl -pe 's:/tmp/par.....:script:g' } par_ksh_env_parallel_session() { @@ -3330,4 +3332,6 @@ compgen -A function | grep par_ | LC_ALL=C sort -r | s/sh\[\d+\]/sh[XXX]/; s/.*(tange|zenodo).*//i; s:/usr/bin:/bin:g; + s:/tmp/par.....\[\d+\]:script[9]:g; + s!/tmp/par.....:!script:!g; ' diff --git a/testsuite/tests-to-run/parallel-local-ssh9.sh b/testsuite/tests-to-run/parallel-local-ssh9.sh index 39fe84ab..8c7746cc 100644 --- a/testsuite/tests-to-run/parallel-local-ssh9.sh +++ b/testsuite/tests-to-run/parallel-local-ssh9.sh @@ -152,9 +152,9 @@ par_propagate_env() { par_env_parallel_big_env() { echo '### bug #54128: command too long when exporting big env' . `which env_parallel.bash` - a=`rand | perl -pe 's/\0//g'| head -c 70000` + a=`rand | perl -pe 's/\0//g'| head -c 20000` env_parallel -Slo echo should not ::: fail 2>&1 - a=`rand | perl -pe 's/\0//g'| head -c 80000` + a=`rand | perl -pe 's/\0//g'| head -c 25000` env_parallel -Slo echo should ::: fail 2>/dev/null || echo OK } diff --git a/testsuite/tests-to-run/parallel-tutorial.sh b/testsuite/tests-to-run/parallel-tutorial.sh index 53364fa5..631f39c8 100644 --- a/testsuite/tests-to-run/parallel-tutorial.sh +++ b/testsuite/tests-to-run/parallel-tutorial.sh @@ -12,6 +12,9 @@ cd tmp touch ~/.parallel/will-cite echo '### test parallel_tutorial' rm -f /tmp/runs + +srcdir=$(pwd | perl -pe 's=$ENV{HOME}==') + export SERVER1=parallel@lo export SERVER2=csh@lo export PARALLEL=-k @@ -54,6 +57,8 @@ perl -ne '$/="\n\n"; /^Output/../^[^O]\S/ and next; /^ / and print;' ../../src/ s/^(\d+)\.\d+$/$1/; # --workdir ... s:parallel/tmp/aspire-\d+-1:TMPWORKDIR:g; + # .../privat/parallel2/ + s='$srcdir'==; # + cat ... | (Bash outputs these in random order) s/\+ cat.*\n//; # + echo ... | (Bash outputs these in random order) @@ -97,6 +102,7 @@ perl -ne '$/="\n\n"; /^Output/../^[^O]\S/ and next; /^ / and print;' ../../src/ s/doi.*=.*//; s/url.*= .*doi.org.*//; s/.Feel free to use .nocite.*//; + s:^/tmp/par.*(.) my_func2:script$1 my_func2:; ' | uniq # 3+3 .par files (from --files), 1 .tms-file from tmux attach find {$TMPDIR,/var/tmp,/tmp}/{fif,tms,par[^a]}* -mmin -10 2>/dev/null | wc -l diff --git a/testsuite/tests-to-run/test19.sh b/testsuite/tests-to-run/test19.sh index 4b37cfdf..3559e642 100644 --- a/testsuite/tests-to-run/test19.sh +++ b/testsuite/tests-to-run/test19.sh @@ -131,7 +131,7 @@ stdout ssh $SSHLOGIN1 ls 'tmp/parallel.file*' || echo OK stdout ssh $SSHLOGIN2 ls 'tmp/parallel.file*' || echo OK echo 'Input for ssh' cat /tmp/myssh1-run /tmp/myssh2-run | perl -pe 's/(PID.)\d+/${1}00000/g;s/(SEQ[ =]|line)\d/$1X/g;' | - perl -pe 's/\S*parallel-server\S*/one-server/;s:\S[a-zA-Z0-9/\\+=]{500,}\S:base64:;' + perl -pe 's/\S*parallel-server\S*/one-server/;s:( [0-9a-f]{500,})+( [0-9a-f]+)?: hex:g;' rm /tmp/myssh1-run /tmp/myssh2-run rm -rf /tmp/parallel.file* diff --git a/testsuite/tests-to-run/test47.sh b/testsuite/tests-to-run/test47.sh index 18fed880..3ac11148 100644 --- a/testsuite/tests-to-run/test47.sh +++ b/testsuite/tests-to-run/test47.sh @@ -30,8 +30,10 @@ export LANG=C echo '### Test --transfer --return --cleanup' rm -rf /tmp/parallel.file* -stdout ssh $SSHLOGIN1 rm -rf 'tmp/parallel.file*' '/tmp/parallel.file*' -stdout ssh $SSHLOGIN2 rm -rf 'tmp/parallel.file*' '/tmp/parallel.file*' +stdout ssh $SSHLOGIN1 rm -rf 'tmp/parallel.file*' '/tmp/parallel.file*' | + grep -v 'Warning: Permanently added.*known hosts' +stdout ssh $SSHLOGIN2 rm -rf 'tmp/parallel.file*' '/tmp/parallel.file*' | + grep -v 'Warning: Permanently added.*known hosts' (seq 1 2) >/tmp/test17 echo '# Create some weirdly files in /tmp' mkdir -p /tmp/parallel.file diff --git a/testsuite/wanted-results/parallel-local-10s b/testsuite/wanted-results/parallel-local-10s index d7273f78..8e398f33 100644 --- a/testsuite/wanted-results/parallel-local-10s +++ b/testsuite/wanted-results/parallel-local-10s @@ -520,14 +520,14 @@ par_load_blocks ### Test if --load blocks. Bug. par_load_blocks 53d025127ae99ab79e8502aae2d9bea6 - par_load_blocks 53d025127ae99ab79e8502aae2d9bea6 - par_long_line_remote ### Deal with long command lines on remote servers -par_long_line_remote 2 6 30006 -par_long_line_remote 3 50 250050 +par_long_line_remote 6 6 30006 +par_long_line_remote 6 50 250050 par_maxlinelen_X_I ### Test max line length -X -I -par_maxlinelen_X_I 88ab30e1d8b7459fddf88986ff282950 - -par_maxlinelen_X_I Chars per line (817788/7): 116826 +par_maxlinelen_X_I 42d5c115907de0044ef988a0639204cd - +par_maxlinelen_X_I Chars per line (817788/13): 62906 par_maxlinelen_m_I ### Test max line length -m -I -par_maxlinelen_m_I 51736abdee4738369ce04b354d40c887 - -par_maxlinelen_m_I Chars per line (697800/6): 116300 +par_maxlinelen_m_I 2f0d9d11a071f5dbe6bd876a19499ff5 - +par_maxlinelen_m_I Chars per line (697810/11): 63437 par_nice Check that --nice works par_nice load_10 par_nice bzip2 18 @@ -1067,7 +1067,7 @@ 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 >= 131XXX) at input 0: zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz... +par_xargs_compat parallel: Error: Command line too long (1000005 >= 64031) at input 0: zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz... par_xargs_compat xargs: argument line too long par_xargs_compat parallel: Error: Command line too long (1000007 >= 10) at input 0: zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz... par_xargs_compat 1 2 diff --git a/testsuite/wanted-results/parallel-local-1s b/testsuite/wanted-results/parallel-local-1s index 9fa856c5..03024077 100644 --- a/testsuite/wanted-results/parallel-local-1s +++ b/testsuite/wanted-results/parallel-local-1s @@ -1071,8 +1071,10 @@ par_test_job_number 8 par_test_job_number 9 par_test_job_number 10 par_too_long_line_X bug #54869: Long lines break -par_too_long_line_X 1 29302 131012 -par_too_long_line_X 1 12698 63490 +par_too_long_line_X 1 15890 63952 +par_too_long_line_X 1 12796 63980 +par_too_long_line_X 1 12796 63980 +par_too_long_line_X 1 518 2590 par_trailing_space_line_continuation ### Test of trailing space continuation par_trailing_space_line_continuation foo ole bar par_trailing_space_line_continuation quux diff --git a/testsuite/wanted-results/parallel-local-30s b/testsuite/wanted-results/parallel-local-30s index 17ce2dbc..93394036 100644 --- a/testsuite/wanted-results/parallel-local-30s +++ b/testsuite/wanted-results/parallel-local-30s @@ -1533,12 +1533,12 @@ par_macron par_macron ¯<¯<¯>¯> -k /usr/bin/bash: ¯: No such file or directory par_macron ¯<¯<¯>¯> -k /usr/bin/bash: ¯: No such file or directory par_max_length_len_128k ### BUG: The length for -X is not close to max (131072) -par_max_length_len_128k 131xxx -par_max_length_len_128k 131xxx -par_max_length_len_128k 131xxx -par_max_length_len_128k 131xxx -par_max_length_len_128k 131xxx -par_max_length_len_128k 131xxx +par_max_length_len_128k 64xxx +par_max_length_len_128k 64xxx +par_max_length_len_128k 64xxx +par_max_length_len_128k 64xxx +par_max_length_len_128k 64xxx +par_max_length_len_128k 64xxx par_memfree ### test memfree - it should be killed by timeout par_memfree Free mem: 1k par_memfree parallel: Warning: This job was killed because it timed out: @@ -1727,6 +1727,8 @@ par_shard 9 8 par_shard 9 9 par_shard 2 c2 par_shard *** broken +par_shard parallel: Error: --shard requires --jobs to be higher than the number of +par_shard parallel: Error: arguments. Increase --jobs. par_sighup ### Test SIGHUP par_sighup 1 par_sighup 10 diff --git a/testsuite/wanted-results/parallel-local-3s b/testsuite/wanted-results/parallel-local-3s index 91698c2b..ea05cbc1 100644 --- a/testsuite/wanted-results/parallel-local-3s +++ b/testsuite/wanted-results/parallel-local-3s @@ -1,17 +1,17 @@ par_10000_5_rpl_X ### Test -X with 10000 args and 5 replacement strings +par_10000_5_rpl_X 5 +par_10000_5_rpl_X 4 +par_10000_5_rpl_X 4 par_10000_5_rpl_X 3 par_10000_5_rpl_X 2 -par_10000_5_rpl_X 2 -par_10000_5_rpl_X 2 -par_10000_5_rpl_X 1 par_10000_m_X ### Test -m with 10000 args -par_10000_m_X 2 29996 186684 -par_10000_m_X c606aec1723ee5cc15f2a1b95d83d3cf - +par_10000_m_X 3 29994 186685 +par_10000_m_X 68c56110ece48d4cd34af322ea65ebaf - par_X_I_meta ### Test -X -I with shell meta chars -par_X_I_meta 2 -par_X_I_meta 2 -par_X_I_meta 2 -par_X_I_meta 2 +par_X_I_meta 3 +par_X_I_meta 3 +par_X_I_meta 3 +par_X_I_meta 3 par_children_receive_sig ### Do children receive --termseq signals par_children_receive_sig parallel: Warning: This job was killed because it timed out: par_children_receive_sig parallel: Warning: show_signals '' @@ -550,7 +550,7 @@ par_shebang sh B par_shebang sh C par_show_limits ### Test --show-limits par_show_limits Maximal size of command: 131xxx -par_show_limits Maximal used size of command: 131xxx +par_show_limits Maximal usable size of command: 64xxx par_show_limits par_show_limits Execution of will continue now, and it will try to read its input par_show_limits and run commands; if this is not what you wanted to happen, please @@ -559,7 +559,7 @@ par_show_limits bar par_show_limits car par_show_limits far par_show_limits Maximal size of command: 131xxx -par_show_limits Maximal used size of command: 100 +par_show_limits Maximal usable size of command: 100 par_show_limits par_show_limits Execution of will continue now, and it will try to read its input par_show_limits and run commands; if this is not what you wanted to happen, please @@ -567,7 +567,7 @@ par_show_limits press CTRL-D or CTRL-C par_show_limits bar car far par_show_limits ### BUG: empty lines with --show-limit par_show_limits Maximal size of command: 131xxx -par_show_limits Maximal used size of command: 131xxx +par_show_limits Maximal usable size of command: 64xxx par_show_limits par_show_limits Execution of will continue now, and it will try to read its input par_show_limits and run commands; if this is not what you wanted to happen, please diff --git a/testsuite/wanted-results/parallel-local-race01 b/testsuite/wanted-results/parallel-local-race01 index d67c97d0..220e1687 100644 --- a/testsuite/wanted-results/parallel-local-race01 +++ b/testsuite/wanted-results/parallel-local-race01 @@ -8,7 +8,7 @@ par_bug56403 2 job2cjob2d par_delay_Xauto TODO: --retries for those that fail and --sshdelay par_delay_Xauto ### bug #58911: --delay Xauto par_delay_Xauto 0 -par_delay_Xauto 5 +par_delay_Xauto 2 par_distribute_input_by_ability ### bug #48290: round-robin does not distribute data based on business par_distribute_input_by_ability ### Distribute input to jobs that are ready par_distribute_input_by_ability Job-slot n is 50% slower than n+1, so the order should be 1..7 diff --git a/testsuite/wanted-results/parallel-local-race02 b/testsuite/wanted-results/parallel-local-race02 index dc3c8b04..0035fdac 100644 --- a/testsuite/wanted-results/parallel-local-race02 +++ b/testsuite/wanted-results/parallel-local-race02 @@ -12,7 +12,11 @@ Control case: Burn for 2.9 seconds stdout /usr/bin/time -f CPUTIME=%U parallel --timeout 5 -q perl -e "while(1){ }" ::: 1 | \grep -q CPUTIME=1 1=OK 1 par_PARALLEL_RSYNC_OPTS ### test rsync opts -par_PARALLEL_RSYNC_OPTS rsync --protocol 30 -rlDzRRRRrsync --protocol 30 --rsync-path='cd ././.; rsync' -rlDzRRRRrsync --protocol 30 -zzrrllddRRRRrsync --protocol 30 --rsync-path='cd ././.; rsync' -zzrrllddRRRR +par_PARALLEL_RSYNC_OPTS rsync --protocol 30 -rlDzRRRR +par_PARALLEL_RSYNC_OPTS rsync --protocol 30 --rsync-path='cd ././.; rsync' -rlDzRRRR +par_PARALLEL_RSYNC_OPTS rsync --protocol 30 -zzrrllddRRRR +par_PARALLEL_RSYNC_OPTS rsync --protocol 30 --rsync-path='cd ././.; rsync' -zzrrllddRRRR +par_PARALLEL_RSYNC_OPTS par_continuous_output Test delayed output with '' par_continuous_output -u is optimal but hard to reach, due to non-mixing par_continuous_output 1 diff --git a/testsuite/wanted-results/parallel-local-ssh2 b/testsuite/wanted-results/parallel-local-ssh2 index 828abba6..1473e6e5 100644 --- a/testsuite/wanted-results/parallel-local-ssh2 +++ b/testsuite/wanted-results/parallel-local-ssh2 @@ -35,24 +35,24 @@ par_pipepart_remote 11 11 33 par_pipepart_remote 11 11 33 par_pipepart_remote 11 11 33 par_pipepart_remote 9 9 28 -par_pipepart_remote 14 14 33 /tmp/parallel-local-ssh2-tmpdir/parXXXXX -par_pipepart_remote 11 11 33 /tmp/parallel-local-ssh2-tmpdir/parXXXXX -par_pipepart_remote 11 11 33 /tmp/parallel-local-ssh2-tmpdir/parXXXXX -par_pipepart_remote 11 11 33 /tmp/parallel-local-ssh2-tmpdir/parXXXXX -par_pipepart_remote 11 11 33 /tmp/parallel-local-ssh2-tmpdir/parXXXXX -par_pipepart_remote 11 11 33 /tmp/parallel-local-ssh2-tmpdir/parXXXXX -par_pipepart_remote 11 11 33 /tmp/parallel-local-ssh2-tmpdir/parXXXXX -par_pipepart_remote 11 11 33 /tmp/parallel-local-ssh2-tmpdir/parXXXXX -par_pipepart_remote 9 9 28 /tmp/parallel-local-ssh2-tmpdir/parXXXXX -par_pipepart_remote 14 14 33 /tmp/parallel-local-ssh2-tmpdir/parXXXXX -par_pipepart_remote 11 11 33 /tmp/parallel-local-ssh2-tmpdir/parXXXXX -par_pipepart_remote 11 11 33 /tmp/parallel-local-ssh2-tmpdir/parXXXXX -par_pipepart_remote 11 11 33 /tmp/parallel-local-ssh2-tmpdir/parXXXXX -par_pipepart_remote 11 11 33 /tmp/parallel-local-ssh2-tmpdir/parXXXXX -par_pipepart_remote 11 11 33 /tmp/parallel-local-ssh2-tmpdir/parXXXXX -par_pipepart_remote 11 11 33 /tmp/parallel-local-ssh2-tmpdir/parXXXXX -par_pipepart_remote 11 11 33 /tmp/parallel-local-ssh2-tmpdir/parXXXXX -par_pipepart_remote 9 9 28 /tmp/parallel-local-ssh2-tmpdir/parXXXXX +par_pipepart_remote 14 14 33 /tmp/parXXXXX +par_pipepart_remote 11 11 33 /tmp/parXXXXX +par_pipepart_remote 11 11 33 /tmp/parXXXXX +par_pipepart_remote 11 11 33 /tmp/parXXXXX +par_pipepart_remote 11 11 33 /tmp/parXXXXX +par_pipepart_remote 11 11 33 /tmp/parXXXXX +par_pipepart_remote 11 11 33 /tmp/parXXXXX +par_pipepart_remote 11 11 33 /tmp/parXXXXX +par_pipepart_remote 9 9 28 /tmp/parXXXXX +par_pipepart_remote 14 14 33 /tmp/parXXXXX +par_pipepart_remote 11 11 33 /tmp/parXXXXX +par_pipepart_remote 11 11 33 /tmp/parXXXXX +par_pipepart_remote 11 11 33 /tmp/parXXXXX +par_pipepart_remote 11 11 33 /tmp/parXXXXX +par_pipepart_remote 11 11 33 /tmp/parXXXXX +par_pipepart_remote 11 11 33 /tmp/parXXXXX +par_pipepart_remote 11 11 33 /tmp/parXXXXX +par_pipepart_remote 9 9 28 /tmp/parXXXXX par_tee_ssh A 1 A 1 par_tee_ssh A 1 1000000 1000000 6888896 par_tee_ssh A 2 A 2 diff --git a/testsuite/wanted-results/parallel-local-ssh4 b/testsuite/wanted-results/parallel-local-ssh4 index bce6919c..f3512133 100644 --- a/testsuite/wanted-results/parallel-local-ssh4 +++ b/testsuite/wanted-results/parallel-local-ssh4 @@ -55,6 +55,8 @@ par_tmux_different_shells # command is currently too long for csh. Maybe it can par_tmux_different_shells 0 par_tmux_different_shells 4 par_tmux_length ### works +par_tmux_length See output with: tmux -S attach +par_tmux_length See output with: tmux -S attach par_tmux_length ### These blocked due to length par_transfer_return_multiple_inputs ### bug #43746: --transfer and --return of multiple inputs {1} and {2} par_transfer_return_multiple_inputs ### and: diff --git a/testsuite/wanted-results/parallel-local-ssh5 b/testsuite/wanted-results/parallel-local-ssh5 index 266565fc..29f701be 100644 --- a/testsuite/wanted-results/parallel-local-ssh5 +++ b/testsuite/wanted-results/parallel-local-ssh5 @@ -27,7 +27,7 @@ par_command_len_shellquote -Slo -j10 " 1 5 1 1 244 par_command_len_shellquote -Slo -j10 " 1 6 1 1 730 par_command_len_shellquote -Slo -j10 " 1 7 1 1 2188 par_command_len_shellquote -Slo -j10 " 1 8 1 1 6562 -par_command_len_shellquote -Slo -j10 " 1 9 1 1 19684 +par_command_len_shellquote -Slo -j10 " 1 9 0 0 0 par_command_len_shellquote -Slo -j10 " 1 10 0 0 0 par_command_len_shellquote -Slo -j10 " 2 1 1 1 5 par_command_len_shellquote -Slo -j10 " 2 2 1 1 11 @@ -36,7 +36,7 @@ par_command_len_shellquote -Slo -j10 " 2 4 1 1 83 par_command_len_shellquote -Slo -j10 " 2 5 1 1 245 par_command_len_shellquote -Slo -j10 " 2 6 1 1 731 par_command_len_shellquote -Slo -j10 " 2 7 1 1 2189 -par_command_len_shellquote -Slo -j10 " 2 8 1 1 6563 +par_command_len_shellquote -Slo -j10 " 2 8 0 0 0 par_command_len_shellquote -Slo -j10 " 2 9 0 0 0 par_command_len_shellquote -Slo -j10 " 2 10 0 0 0 par_command_len_shellquote -Slo -j10 " 3 1 1 1 6 @@ -46,7 +46,7 @@ par_command_len_shellquote -Slo -j10 " 3 4 1 1 84 par_command_len_shellquote -Slo -j10 " 3 5 1 1 246 par_command_len_shellquote -Slo -j10 " 3 6 1 1 732 par_command_len_shellquote -Slo -j10 " 3 7 1 1 2190 -par_command_len_shellquote -Slo -j10 " 3 8 1 1 6564 +par_command_len_shellquote -Slo -j10 " 3 8 0 0 0 par_command_len_shellquote -Slo -j10 " 3 9 0 0 0 par_command_len_shellquote -Slo -j10 " 3 10 0 0 0 par_command_len_shellquote -Slo -j10 " 4 1 1 1 7 @@ -75,7 +75,7 @@ par_command_len_shellquote -Slo -j10 " 6 3 1 1 33 par_command_len_shellquote -Slo -j10 " 6 4 1 1 87 par_command_len_shellquote -Slo -j10 " 6 5 1 1 249 par_command_len_shellquote -Slo -j10 " 6 6 1 1 735 -par_command_len_shellquote -Slo -j10 " 6 7 1 1 2193 +par_command_len_shellquote -Slo -j10 " 6 7 0 0 0 par_command_len_shellquote -Slo -j10 " 6 8 0 0 0 par_command_len_shellquote -Slo -j10 " 6 9 0 0 0 par_command_len_shellquote -Slo -j10 " 6 10 0 0 0 @@ -85,7 +85,7 @@ par_command_len_shellquote -Slo -j10 " 7 3 1 1 34 par_command_len_shellquote -Slo -j10 " 7 4 1 1 88 par_command_len_shellquote -Slo -j10 " 7 5 1 1 250 par_command_len_shellquote -Slo -j10 " 7 6 1 1 736 -par_command_len_shellquote -Slo -j10 " 7 7 1 1 2194 +par_command_len_shellquote -Slo -j10 " 7 7 0 0 0 par_command_len_shellquote -Slo -j10 " 7 8 0 0 0 par_command_len_shellquote -Slo -j10 " 7 9 0 0 0 par_command_len_shellquote -Slo -j10 " 7 10 0 0 0 @@ -95,7 +95,7 @@ par_command_len_shellquote -Slo -j10 " 8 3 1 1 35 par_command_len_shellquote -Slo -j10 " 8 4 1 1 89 par_command_len_shellquote -Slo -j10 " 8 5 1 1 251 par_command_len_shellquote -Slo -j10 " 8 6 1 1 737 -par_command_len_shellquote -Slo -j10 " 8 7 1 1 2195 +par_command_len_shellquote -Slo -j10 " 8 7 0 0 0 par_command_len_shellquote -Slo -j10 " 8 8 0 0 0 par_command_len_shellquote -Slo -j10 " 8 9 0 0 0 par_command_len_shellquote -Slo -j10 " 8 10 0 0 0 @@ -105,7 +105,7 @@ par_command_len_shellquote -Slo -j10 " 9 3 1 1 36 par_command_len_shellquote -Slo -j10 " 9 4 1 1 90 par_command_len_shellquote -Slo -j10 " 9 5 1 1 252 par_command_len_shellquote -Slo -j10 " 9 6 1 1 738 -par_command_len_shellquote -Slo -j10 " 9 7 1 1 2196 +par_command_len_shellquote -Slo -j10 " 9 7 0 0 0 par_command_len_shellquote -Slo -j10 " 9 8 0 0 0 par_command_len_shellquote -Slo -j10 " 9 9 0 0 0 par_command_len_shellquote -Slo -j10 " 9 10 0 0 0 @@ -115,7 +115,7 @@ par_command_len_shellquote -Slo -j10 " 10 3 1 1 37 par_command_len_shellquote -Slo -j10 " 10 4 1 1 91 par_command_len_shellquote -Slo -j10 " 10 5 1 1 253 par_command_len_shellquote -Slo -j10 " 10 6 1 1 739 -par_command_len_shellquote -Slo -j10 " 10 7 1 1 2197 +par_command_len_shellquote -Slo -j10 " 10 7 0 0 0 par_command_len_shellquote -Slo -j10 " 10 8 0 0 0 par_command_len_shellquote -Slo -j10 " 10 9 0 0 0 par_command_len_shellquote -Slo -j10 " 10 10 0 0 0 @@ -127,7 +127,7 @@ par_command_len_shellquote -Slo -j10 ' 1 5 1 1 244 par_command_len_shellquote -Slo -j10 ' 1 6 1 1 730 par_command_len_shellquote -Slo -j10 ' 1 7 1 1 2188 par_command_len_shellquote -Slo -j10 ' 1 8 1 1 6562 -par_command_len_shellquote -Slo -j10 ' 1 9 1 1 19684 +par_command_len_shellquote -Slo -j10 ' 1 9 0 0 0 par_command_len_shellquote -Slo -j10 ' 1 10 0 0 0 par_command_len_shellquote -Slo -j10 ' 2 1 1 1 9 par_command_len_shellquote -Slo -j10 ' 2 2 1 1 27 @@ -136,7 +136,7 @@ par_command_len_shellquote -Slo -j10 ' 2 4 1 1 243 par_command_len_shellquote -Slo -j10 ' 2 5 1 1 729 par_command_len_shellquote -Slo -j10 ' 2 6 1 1 2187 par_command_len_shellquote -Slo -j10 ' 2 7 1 1 6561 -par_command_len_shellquote -Slo -j10 ' 2 8 1 1 19683 +par_command_len_shellquote -Slo -j10 ' 2 8 0 0 0 par_command_len_shellquote -Slo -j10 ' 2 9 0 0 0 par_command_len_shellquote -Slo -j10 ' 2 10 0 0 0 par_command_len_shellquote -Slo -j10 ' 3 1 1 1 14 @@ -145,8 +145,8 @@ par_command_len_shellquote -Slo -j10 ' 3 3 1 1 134 par_command_len_shellquote -Slo -j10 ' 3 4 1 1 404 par_command_len_shellquote -Slo -j10 ' 3 5 1 1 1214 par_command_len_shellquote -Slo -j10 ' 3 6 1 1 3644 -par_command_len_shellquote -Slo -j10 ' 3 7 1 1 10934 -par_command_len_shellquote -Slo -j10 ' 3 8 1 1 32804 +par_command_len_shellquote -Slo -j10 ' 3 7 1 1 10xxx +par_command_len_shellquote -Slo -j10 ' 3 8 0 0 0 par_command_len_shellquote -Slo -j10 ' 3 9 0 0 0 par_command_len_shellquote -Slo -j10 ' 3 10 0 0 0 par_command_len_shellquote -Slo -j10 ' 4 1 1 1 19 @@ -155,7 +155,7 @@ par_command_len_shellquote -Slo -j10 ' 4 3 1 1 187 par_command_len_shellquote -Slo -j10 ' 4 4 1 1 565 par_command_len_shellquote -Slo -j10 ' 4 5 1 1 1699 par_command_len_shellquote -Slo -j10 ' 4 6 1 1 5101 -par_command_len_shellquote -Slo -j10 ' 4 7 1 1 15307 +par_command_len_shellquote -Slo -j10 ' 4 7 1 1 15xxx par_command_len_shellquote -Slo -j10 ' 4 8 0 0 0 par_command_len_shellquote -Slo -j10 ' 4 9 0 0 0 par_command_len_shellquote -Slo -j10 ' 4 10 0 0 0 @@ -165,7 +165,7 @@ par_command_len_shellquote -Slo -j10 ' 5 3 1 1 240 par_command_len_shellquote -Slo -j10 ' 5 4 1 1 726 par_command_len_shellquote -Slo -j10 ' 5 5 1 1 2184 par_command_len_shellquote -Slo -j10 ' 5 6 1 1 6558 -par_command_len_shellquote -Slo -j10 ' 5 7 1 1 19680 +par_command_len_shellquote -Slo -j10 ' 5 7 1 1 19xxx par_command_len_shellquote -Slo -j10 ' 5 8 0 0 0 par_command_len_shellquote -Slo -j10 ' 5 9 0 0 0 par_command_len_shellquote -Slo -j10 ' 5 10 0 0 0 @@ -175,7 +175,7 @@ par_command_len_shellquote -Slo -j10 ' 6 3 1 1 293 par_command_len_shellquote -Slo -j10 ' 6 4 1 1 887 par_command_len_shellquote -Slo -j10 ' 6 5 1 1 2669 par_command_len_shellquote -Slo -j10 ' 6 6 1 1 8015 -par_command_len_shellquote -Slo -j10 ' 6 7 1 1 24053 +par_command_len_shellquote -Slo -j10 ' 6 7 0 0 0 par_command_len_shellquote -Slo -j10 ' 6 8 0 0 0 par_command_len_shellquote -Slo -j10 ' 6 9 0 0 0 par_command_len_shellquote -Slo -j10 ' 6 10 0 0 0 @@ -185,7 +185,7 @@ par_command_len_shellquote -Slo -j10 ' 7 3 1 1 346 par_command_len_shellquote -Slo -j10 ' 7 4 1 1 1048 par_command_len_shellquote -Slo -j10 ' 7 5 1 1 3154 par_command_len_shellquote -Slo -j10 ' 7 6 1 1 9472 -par_command_len_shellquote -Slo -j10 ' 7 7 1 1 28426 +par_command_len_shellquote -Slo -j10 ' 7 7 0 0 0 par_command_len_shellquote -Slo -j10 ' 7 8 0 0 0 par_command_len_shellquote -Slo -j10 ' 7 9 0 0 0 par_command_len_shellquote -Slo -j10 ' 7 10 0 0 0 @@ -194,8 +194,8 @@ par_command_len_shellquote -Slo -j10 ' 8 2 1 1 129 par_command_len_shellquote -Slo -j10 ' 8 3 1 1 399 par_command_len_shellquote -Slo -j10 ' 8 4 1 1 1209 par_command_len_shellquote -Slo -j10 ' 8 5 1 1 3639 -par_command_len_shellquote -Slo -j10 ' 8 6 1 1 10929 -par_command_len_shellquote -Slo -j10 ' 8 7 1 1 32799 +par_command_len_shellquote -Slo -j10 ' 8 6 1 1 10xxx +par_command_len_shellquote -Slo -j10 ' 8 7 0 0 0 par_command_len_shellquote -Slo -j10 ' 8 8 0 0 0 par_command_len_shellquote -Slo -j10 ' 8 9 0 0 0 par_command_len_shellquote -Slo -j10 ' 8 10 0 0 0 @@ -204,8 +204,8 @@ par_command_len_shellquote -Slo -j10 ' 9 2 1 1 146 par_command_len_shellquote -Slo -j10 ' 9 3 1 1 452 par_command_len_shellquote -Slo -j10 ' 9 4 1 1 1370 par_command_len_shellquote -Slo -j10 ' 9 5 1 1 4124 -par_command_len_shellquote -Slo -j10 ' 9 6 1 1 12386 -par_command_len_shellquote -Slo -j10 ' 9 7 1 1 37172 +par_command_len_shellquote -Slo -j10 ' 9 6 1 1 12xxx +par_command_len_shellquote -Slo -j10 ' 9 7 0 0 0 par_command_len_shellquote -Slo -j10 ' 9 8 0 0 0 par_command_len_shellquote -Slo -j10 ' 9 9 0 0 0 par_command_len_shellquote -Slo -j10 ' 9 10 0 0 0 @@ -214,63 +214,79 @@ par_command_len_shellquote -Slo -j10 ' 10 2 1 1 163 par_command_len_shellquote -Slo -j10 ' 10 3 1 1 505 par_command_len_shellquote -Slo -j10 ' 10 4 1 1 1531 par_command_len_shellquote -Slo -j10 ' 10 5 1 1 4609 -par_command_len_shellquote -Slo -j10 ' 10 6 1 1 13843 -par_command_len_shellquote -Slo -j10 ' 10 7 1 1 41545 +par_command_len_shellquote -Slo -j10 ' 10 6 1 1 13xxx +par_command_len_shellquote -Slo -j10 ' 10 7 0 0 0 par_command_len_shellquote -Slo -j10 ' 10 8 0 0 0 par_command_len_shellquote -Slo -j10 ' 10 9 0 0 0 par_command_len_shellquote -Slo -j10 ' 10 10 0 0 0 -par_command_len_shellquote -Slo -j10 " 1 10 parallel: Error: Command line too long (295245 >= 131xxx) at input 0: " -par_command_len_shellquote -Slo -j10 " 2 9 parallel: Error: Command line too long (196830 >= 131xxx) at input 0: "" -par_command_len_shellquote -Slo -j10 " 2 10 parallel: Error: Command line too long (590490 >= 131xxx) at input 0: "" -par_command_len_shellquote -Slo -j10 " 3 9 parallel: Error: Command line too long (295245 >= 131xxx) at input 0: """ -par_command_len_shellquote -Slo -j10 " 3 10 parallel: Error: Command line too long (885735 >= 131xxx) at input 0: """ -par_command_len_shellquote -Slo -j10 " 4 8 parallel: Error: Command line too long (131xxx >= 131xxx) at input 0: """" -par_command_len_shellquote -Slo -j10 " 4 9 parallel: Error: Command line too long (393660 >= 131xxx) at input 0: """" -par_command_len_shellquote -Slo -j10 " 4 10 parallel: Error: Command line too long (1180980 >= 131xxx) at input 0: """" -par_command_len_shellquote -Slo -j10 " 5 8 parallel: Error: Command line too long (164025 >= 131xxx) at input 0: """"" -par_command_len_shellquote -Slo -j10 " 5 9 parallel: Error: Command line too long (492075 >= 131xxx) at input 0: """"" -par_command_len_shellquote -Slo -j10 " 5 10 parallel: Error: Command line too long (1476225 >= 131xxx) at input 0: """"" -par_command_len_shellquote -Slo -j10 " 6 8 parallel: Error: Command line too long (196830 >= 131xxx) at input 0: """""" -par_command_len_shellquote -Slo -j10 " 6 9 parallel: Error: Command line too long (590490 >= 131xxx) at input 0: """""" -par_command_len_shellquote -Slo -j10 " 6 10 parallel: Error: Command line too long (1771470 >= 131xxx) at input 0: """""" -par_command_len_shellquote -Slo -j10 " 7 8 parallel: Error: Command line too long (229635 >= 131xxx) at input 0: """"""" -par_command_len_shellquote -Slo -j10 " 7 9 parallel: Error: Command line too long (688905 >= 131xxx) at input 0: """"""" -par_command_len_shellquote -Slo -j10 " 7 10 parallel: Error: Command line too long (2066715 >= 131xxx) at input 0: """"""" -par_command_len_shellquote -Slo -j10 " 8 8 parallel: Error: Command line too long (262440 >= 131xxx) at input 0: """""""" -par_command_len_shellquote -Slo -j10 " 8 9 parallel: Error: Command line too long (787320 >= 131xxx) at input 0: """""""" -par_command_len_shellquote -Slo -j10 " 8 10 parallel: Error: Command line too long (2361960 >= 131xxx) at input 0: """""""" -par_command_len_shellquote -Slo -j10 " 9 8 parallel: Error: Command line too long (295245 >= 131xxx) at input 0: """"""""" -par_command_len_shellquote -Slo -j10 " 9 9 parallel: Error: Command line too long (885735 >= 131xxx) at input 0: """"""""" -par_command_len_shellquote -Slo -j10 " 9 10 parallel: Error: Command line too long (2657205 >= 131xxx) at input 0: """"""""" -par_command_len_shellquote -Slo -j10 " 10 8 parallel: Error: Command line too long (328050 >= 131xxx) at input 0: """""""""" -par_command_len_shellquote -Slo -j10 " 10 9 parallel: Error: Command line too long (984150 >= 131xxx) at input 0: """""""""" -par_command_len_shellquote -Slo -j10 " 10 10 parallel: Error: Command line too long (2952450 >= 131xxx) at input 0: """""""""" -par_command_len_shellquote -Slo -j10 ' 1 10 parallel: Error: Command line too long (295245 >= 131xxx) at input 0: ' -par_command_len_shellquote -Slo -j10 ' 2 9 parallel: Error: Command line too long (196830 >= 131xxx) at input 0: '' -par_command_len_shellquote -Slo -j10 ' 2 10 parallel: Error: Command line too long (590490 >= 131xxx) at input 0: '' -par_command_len_shellquote -Slo -j10 ' 3 9 parallel: Error: Command line too long (295245 >= 131xxx) at input 0: ''' -par_command_len_shellquote -Slo -j10 ' 3 10 parallel: Error: Command line too long (885735 >= 131xxx) at input 0: ''' -par_command_len_shellquote -Slo -j10 ' 4 8 parallel: Error: Command line too long (131xxx >= 131xxx) at input 0: '''' -par_command_len_shellquote -Slo -j10 ' 4 9 parallel: Error: Command line too long (393660 >= 131xxx) at input 0: '''' -par_command_len_shellquote -Slo -j10 ' 4 10 parallel: Error: Command line too long (1180980 >= 131xxx) at input 0: '''' -par_command_len_shellquote -Slo -j10 ' 5 8 parallel: Error: Command line too long (164025 >= 131xxx) at input 0: ''''' -par_command_len_shellquote -Slo -j10 ' 5 9 parallel: Error: Command line too long (492075 >= 131xxx) at input 0: ''''' -par_command_len_shellquote -Slo -j10 ' 5 10 parallel: Error: Command line too long (1476225 >= 131xxx) at input 0: ''''' -par_command_len_shellquote -Slo -j10 ' 6 8 parallel: Error: Command line too long (196830 >= 131xxx) at input 0: '''''' -par_command_len_shellquote -Slo -j10 ' 6 9 parallel: Error: Command line too long (590490 >= 131xxx) at input 0: '''''' -par_command_len_shellquote -Slo -j10 ' 6 10 parallel: Error: Command line too long (1771470 >= 131xxx) at input 0: '''''' -par_command_len_shellquote -Slo -j10 ' 7 8 parallel: Error: Command line too long (229635 >= 131xxx) at input 0: ''''''' -par_command_len_shellquote -Slo -j10 ' 7 9 parallel: Error: Command line too long (688905 >= 131xxx) at input 0: ''''''' -par_command_len_shellquote -Slo -j10 ' 7 10 parallel: Error: Command line too long (2066715 >= 131xxx) at input 0: ''''''' -par_command_len_shellquote -Slo -j10 ' 8 8 parallel: Error: Command line too long (262440 >= 131xxx) at input 0: '''''''' -par_command_len_shellquote -Slo -j10 ' 8 9 parallel: Error: Command line too long (787320 >= 131xxx) at input 0: '''''''' -par_command_len_shellquote -Slo -j10 ' 8 10 parallel: Error: Command line too long (2361960 >= 131xxx) at input 0: '''''''' -par_command_len_shellquote -Slo -j10 ' 9 8 parallel: Error: Command line too long (295245 >= 131xxx) at input 0: ''''''''' -par_command_len_shellquote -Slo -j10 ' 9 9 parallel: Error: Command line too long (885735 >= 131xxx) at input 0: ''''''''' -par_command_len_shellquote -Slo -j10 ' 9 10 parallel: Error: Command line too long (2657205 >= 131xxx) at input 0: ''''''''' -par_command_len_shellquote -Slo -j10 ' 10 8 parallel: Error: Command line too long (328050 >= 131xxx) at input 0: '''''''''' -par_command_len_shellquote -Slo -j10 ' 10 9 parallel: Error: Command line too long (984150 >= 131xxx) at input 0: '''''''''' -par_command_len_shellquote -Slo -j10 ' 10 10 parallel: Error: Command line too long (2952450 >= 131xxx) at input 0: '''''''''' +par_command_len_shellquote -Slo -j10 " 1 9 parallel: Error: Command line too long (98xxx >= 64xxx) at input 0: " +par_command_len_shellquote -Slo -j10 " 1 10 parallel: Error: Command line too long (295xxx >= 64xxx) at input 0: " +par_command_len_shellquote -Slo -j10 " 2 8 parallel: Error: Command line too long (65xxx >= 64xxx) at input 0: "" +par_command_len_shellquote -Slo -j10 " 2 9 parallel: Error: Command line too long (196xxx >= 64xxx) at input 0: "" +par_command_len_shellquote -Slo -j10 " 2 10 parallel: Error: Command line too long (590xxx >= 64xxx) at input 0: "" +par_command_len_shellquote -Slo -j10 " 3 8 parallel: Error: Command line too long (98xxx >= 64xxx) at input 0: """ +par_command_len_shellquote -Slo -j10 " 3 9 parallel: Error: Command line too long (295xxx >= 64xxx) at input 0: """ +par_command_len_shellquote -Slo -j10 " 3 10 parallel: Error: Command line too long (885xxx >= 64xxx) at input 0: """ +par_command_len_shellquote -Slo -j10 " 4 8 parallel: Error: Command line too long (131xxx >= 64xxx) at input 0: """" +par_command_len_shellquote -Slo -j10 " 4 9 parallel: Error: Command line too long (393xxx >= 64xxx) at input 0: """" +par_command_len_shellquote -Slo -j10 " 4 10 parallel: Error: Command line too long (1180xxx >= 64xxx) at input 0: """" +par_command_len_shellquote -Slo -j10 " 5 8 parallel: Error: Command line too long (164xxx >= 64xxx) at input 0: """"" +par_command_len_shellquote -Slo -j10 " 5 9 parallel: Error: Command line too long (492xxx >= 64xxx) at input 0: """"" +par_command_len_shellquote -Slo -j10 " 5 10 parallel: Error: Command line too long (1476xxx >= 64xxx) at input 0: """"" +par_command_len_shellquote -Slo -j10 " 6 7 parallel: Error: Command line too long (65xxx >= 64xxx) at input 0: """""" +par_command_len_shellquote -Slo -j10 " 6 8 parallel: Error: Command line too long (196xxx >= 64xxx) at input 0: """""" +par_command_len_shellquote -Slo -j10 " 6 9 parallel: Error: Command line too long (590xxx >= 64xxx) at input 0: """""" +par_command_len_shellquote -Slo -j10 " 6 10 parallel: Error: Command line too long (1771xxx >= 64xxx) at input 0: """""" +par_command_len_shellquote -Slo -j10 " 7 7 parallel: Error: Command line too long (76xxx >= 64xxx) at input 0: """"""" +par_command_len_shellquote -Slo -j10 " 7 8 parallel: Error: Command line too long (229xxx >= 64xxx) at input 0: """"""" +par_command_len_shellquote -Slo -j10 " 7 9 parallel: Error: Command line too long (688xxx >= 64xxx) at input 0: """"""" +par_command_len_shellquote -Slo -j10 " 7 10 parallel: Error: Command line too long (2066xxx >= 64xxx) at input 0: """"""" +par_command_len_shellquote -Slo -j10 " 8 7 parallel: Error: Command line too long (87xxx >= 64xxx) at input 0: """""""" +par_command_len_shellquote -Slo -j10 " 8 8 parallel: Error: Command line too long (262xxx >= 64xxx) at input 0: """""""" +par_command_len_shellquote -Slo -j10 " 8 9 parallel: Error: Command line too long (787xxx >= 64xxx) at input 0: """""""" +par_command_len_shellquote -Slo -j10 " 8 10 parallel: Error: Command line too long (2361xxx >= 64xxx) at input 0: """""""" +par_command_len_shellquote -Slo -j10 " 9 7 parallel: Error: Command line too long (98xxx >= 64xxx) at input 0: """"""""" +par_command_len_shellquote -Slo -j10 " 9 8 parallel: Error: Command line too long (295xxx >= 64xxx) at input 0: """"""""" +par_command_len_shellquote -Slo -j10 " 9 9 parallel: Error: Command line too long (885xxx >= 64xxx) at input 0: """"""""" +par_command_len_shellquote -Slo -j10 " 9 10 parallel: Error: Command line too long (2657xxx >= 64xxx) at input 0: """"""""" +par_command_len_shellquote -Slo -j10 " 10 7 parallel: Error: Command line too long (109xxx >= 64xxx) at input 0: """""""""" +par_command_len_shellquote -Slo -j10 " 10 8 parallel: Error: Command line too long (328xxx >= 64xxx) at input 0: """""""""" +par_command_len_shellquote -Slo -j10 " 10 9 parallel: Error: Command line too long (984xxx >= 64xxx) at input 0: """""""""" +par_command_len_shellquote -Slo -j10 " 10 10 parallel: Error: Command line too long (2952xxx >= 64xxx) at input 0: """""""""" +par_command_len_shellquote -Slo -j10 ' 1 9 parallel: Error: Command line too long (98xxx >= 64xxx) at input 0: ' +par_command_len_shellquote -Slo -j10 ' 1 10 parallel: Error: Command line too long (295xxx >= 64xxx) at input 0: ' +par_command_len_shellquote -Slo -j10 ' 2 8 parallel: Error: Command line too long (65xxx >= 64xxx) at input 0: '' +par_command_len_shellquote -Slo -j10 ' 2 9 parallel: Error: Command line too long (196xxx >= 64xxx) at input 0: '' +par_command_len_shellquote -Slo -j10 ' 2 10 parallel: Error: Command line too long (590xxx >= 64xxx) at input 0: '' +par_command_len_shellquote -Slo -j10 ' 3 8 parallel: Error: Command line too long (98xxx >= 64xxx) at input 0: ''' +par_command_len_shellquote -Slo -j10 ' 3 9 parallel: Error: Command line too long (295xxx >= 64xxx) at input 0: ''' +par_command_len_shellquote -Slo -j10 ' 3 10 parallel: Error: Command line too long (885xxx >= 64xxx) at input 0: ''' +par_command_len_shellquote -Slo -j10 ' 4 8 parallel: Error: Command line too long (131xxx >= 64xxx) at input 0: '''' +par_command_len_shellquote -Slo -j10 ' 4 9 parallel: Error: Command line too long (393xxx >= 64xxx) at input 0: '''' +par_command_len_shellquote -Slo -j10 ' 4 10 parallel: Error: Command line too long (1180xxx >= 64xxx) at input 0: '''' +par_command_len_shellquote -Slo -j10 ' 5 8 parallel: Error: Command line too long (164xxx >= 64xxx) at input 0: ''''' +par_command_len_shellquote -Slo -j10 ' 5 9 parallel: Error: Command line too long (492xxx >= 64xxx) at input 0: ''''' +par_command_len_shellquote -Slo -j10 ' 5 10 parallel: Error: Command line too long (1476xxx >= 64xxx) at input 0: ''''' +par_command_len_shellquote -Slo -j10 ' 6 7 parallel: Error: Command line too long (65xxx >= 64xxx) at input 0: '''''' +par_command_len_shellquote -Slo -j10 ' 6 8 parallel: Error: Command line too long (196xxx >= 64xxx) at input 0: '''''' +par_command_len_shellquote -Slo -j10 ' 6 9 parallel: Error: Command line too long (590xxx >= 64xxx) at input 0: '''''' +par_command_len_shellquote -Slo -j10 ' 6 10 parallel: Error: Command line too long (1771xxx >= 64xxx) at input 0: '''''' +par_command_len_shellquote -Slo -j10 ' 7 7 parallel: Error: Command line too long (76xxx >= 64xxx) at input 0: ''''''' +par_command_len_shellquote -Slo -j10 ' 7 8 parallel: Error: Command line too long (229xxx >= 64xxx) at input 0: ''''''' +par_command_len_shellquote -Slo -j10 ' 7 9 parallel: Error: Command line too long (688xxx >= 64xxx) at input 0: ''''''' +par_command_len_shellquote -Slo -j10 ' 7 10 parallel: Error: Command line too long (2066xxx >= 64xxx) at input 0: ''''''' +par_command_len_shellquote -Slo -j10 ' 8 7 parallel: Error: Command line too long (87xxx >= 64xxx) at input 0: '''''''' +par_command_len_shellquote -Slo -j10 ' 8 8 parallel: Error: Command line too long (262xxx >= 64xxx) at input 0: '''''''' +par_command_len_shellquote -Slo -j10 ' 8 9 parallel: Error: Command line too long (787xxx >= 64xxx) at input 0: '''''''' +par_command_len_shellquote -Slo -j10 ' 8 10 parallel: Error: Command line too long (2361xxx >= 64xxx) at input 0: '''''''' +par_command_len_shellquote -Slo -j10 ' 9 7 parallel: Error: Command line too long (98xxx >= 64xxx) at input 0: ''''''''' +par_command_len_shellquote -Slo -j10 ' 9 8 parallel: Error: Command line too long (295xxx >= 64xxx) at input 0: ''''''''' +par_command_len_shellquote -Slo -j10 ' 9 9 parallel: Error: Command line too long (885xxx >= 64xxx) at input 0: ''''''''' +par_command_len_shellquote -Slo -j10 ' 9 10 parallel: Error: Command line too long (2657xxx >= 64xxx) at input 0: ''''''''' +par_command_len_shellquote -Slo -j10 ' 10 7 parallel: Error: Command line too long (109xxx >= 64xxx) at input 0: '''''''''' +par_command_len_shellquote -Slo -j10 ' 10 8 parallel: Error: Command line too long (328xxx >= 64xxx) at input 0: '''''''''' +par_command_len_shellquote -Slo -j10 ' 10 9 parallel: Error: Command line too long (984xxx >= 64xxx) at input 0: '''''''''' +par_command_len_shellquote -Slo -j10 ' 10 10 parallel: Error: Command line too long (2952xxx >= 64xxx) at input 0: '''''''''' par_command_len_shellquote " 1 1 1 2 6 par_command_len_shellquote " 1 2 1 2 12 par_command_len_shellquote " 1 3 1 2 30 @@ -278,7 +294,7 @@ par_command_len_shellquote " 1 4 1 2 84 par_command_len_shellquote " 1 5 1 2 246 par_command_len_shellquote " 1 6 1 2 732 par_command_len_shellquote " 1 7 1 2 2190 -par_command_len_shellquote " 1 8 1 2 6564 +par_command_len_shellquote " 1 8 0 0 0 par_command_len_shellquote " 1 9 0 0 0 par_command_len_shellquote " 1 10 0 0 0 par_command_len_shellquote " 2 1 1 2 8 @@ -297,7 +313,7 @@ par_command_len_shellquote " 3 3 1 2 34 par_command_len_shellquote " 3 4 1 2 88 par_command_len_shellquote " 3 5 1 2 250 par_command_len_shellquote " 3 6 1 2 736 -par_command_len_shellquote " 3 7 1 2 2194 +par_command_len_shellquote " 3 7 0 0 0 par_command_len_shellquote " 3 8 0 0 0 par_command_len_shellquote " 3 9 0 0 0 par_command_len_shellquote " 3 10 0 0 0 @@ -307,7 +323,7 @@ par_command_len_shellquote " 4 3 1 2 36 par_command_len_shellquote " 4 4 1 2 90 par_command_len_shellquote " 4 5 1 2 252 par_command_len_shellquote " 4 6 1 2 738 -par_command_len_shellquote " 4 7 1 2 2196 +par_command_len_shellquote " 4 7 0 0 0 par_command_len_shellquote " 4 8 0 0 0 par_command_len_shellquote " 4 9 0 0 0 par_command_len_shellquote " 4 10 0 0 0 @@ -317,7 +333,7 @@ par_command_len_shellquote " 5 3 1 2 38 par_command_len_shellquote " 5 4 1 2 92 par_command_len_shellquote " 5 5 1 2 254 par_command_len_shellquote " 5 6 1 2 740 -par_command_len_shellquote " 5 7 1 2 2198 +par_command_len_shellquote " 5 7 0 0 0 par_command_len_shellquote " 5 8 0 0 0 par_command_len_shellquote " 5 9 0 0 0 par_command_len_shellquote " 5 10 0 0 0 @@ -356,7 +372,7 @@ par_command_len_shellquote " 9 2 1 2 28 par_command_len_shellquote " 9 3 1 2 46 par_command_len_shellquote " 9 4 1 2 100 par_command_len_shellquote " 9 5 1 2 262 -par_command_len_shellquote " 9 6 1 2 748 +par_command_len_shellquote " 9 6 0 0 0 par_command_len_shellquote " 9 7 0 0 0 par_command_len_shellquote " 9 8 0 0 0 par_command_len_shellquote " 9 9 0 0 0 @@ -366,7 +382,7 @@ par_command_len_shellquote " 10 2 1 2 30 par_command_len_shellquote " 10 3 1 2 48 par_command_len_shellquote " 10 4 1 2 102 par_command_len_shellquote " 10 5 1 2 264 -par_command_len_shellquote " 10 6 1 2 750 +par_command_len_shellquote " 10 6 0 0 0 par_command_len_shellquote " 10 7 0 0 0 par_command_len_shellquote " 10 8 0 0 0 par_command_len_shellquote " 10 9 0 0 0 @@ -378,7 +394,7 @@ par_command_len_shellquote ' 1 4 1 2 84 par_command_len_shellquote ' 1 5 1 2 246 par_command_len_shellquote ' 1 6 1 2 732 par_command_len_shellquote ' 1 7 1 2 2190 -par_command_len_shellquote ' 1 8 1 2 6564 +par_command_len_shellquote ' 1 8 0 0 0 par_command_len_shellquote ' 1 9 0 0 0 par_command_len_shellquote ' 1 10 0 0 0 par_command_len_shellquote ' 2 1 1 2 12 @@ -397,7 +413,7 @@ par_command_len_shellquote ' 3 3 1 2 138 par_command_len_shellquote ' 3 4 1 2 408 par_command_len_shellquote ' 3 5 1 2 1218 par_command_len_shellquote ' 3 6 1 2 3648 -par_command_len_shellquote ' 3 7 1 2 10938 +par_command_len_shellquote ' 3 7 0 0 0 par_command_len_shellquote ' 3 8 0 0 0 par_command_len_shellquote ' 3 9 0 0 0 par_command_len_shellquote ' 3 10 0 0 0 @@ -407,7 +423,7 @@ par_command_len_shellquote ' 4 3 1 2 192 par_command_len_shellquote ' 4 4 1 2 570 par_command_len_shellquote ' 4 5 1 2 1704 par_command_len_shellquote ' 4 6 1 2 5106 -par_command_len_shellquote ' 4 7 1 2 15312 +par_command_len_shellquote ' 4 7 0 0 0 par_command_len_shellquote ' 4 8 0 0 0 par_command_len_shellquote ' 4 9 0 0 0 par_command_len_shellquote ' 4 10 0 0 0 @@ -417,7 +433,7 @@ par_command_len_shellquote ' 5 3 1 2 246 par_command_len_shellquote ' 5 4 1 2 732 par_command_len_shellquote ' 5 5 1 2 2190 par_command_len_shellquote ' 5 6 1 2 6564 -par_command_len_shellquote ' 5 7 1 2 19686 +par_command_len_shellquote ' 5 7 0 0 0 par_command_len_shellquote ' 5 8 0 0 0 par_command_len_shellquote ' 5 9 0 0 0 par_command_len_shellquote ' 5 10 0 0 0 @@ -446,7 +462,7 @@ par_command_len_shellquote ' 8 2 1 2 138 par_command_len_shellquote ' 8 3 1 2 408 par_command_len_shellquote ' 8 4 1 2 1218 par_command_len_shellquote ' 8 5 1 2 3648 -par_command_len_shellquote ' 8 6 1 2 10938 +par_command_len_shellquote ' 8 6 1 2 10xxx par_command_len_shellquote ' 8 7 0 0 0 par_command_len_shellquote ' 8 8 0 0 0 par_command_len_shellquote ' 8 9 0 0 0 @@ -456,7 +472,7 @@ par_command_len_shellquote ' 9 2 1 2 156 par_command_len_shellquote ' 9 3 1 2 462 par_command_len_shellquote ' 9 4 1 2 1380 par_command_len_shellquote ' 9 5 1 2 4134 -par_command_len_shellquote ' 9 6 1 2 12396 +par_command_len_shellquote ' 9 6 0 0 0 par_command_len_shellquote ' 9 7 0 0 0 par_command_len_shellquote ' 9 8 0 0 0 par_command_len_shellquote ' 9 9 0 0 0 @@ -466,79 +482,91 @@ par_command_len_shellquote ' 10 2 1 2 174 par_command_len_shellquote ' 10 3 1 2 516 par_command_len_shellquote ' 10 4 1 2 1542 par_command_len_shellquote ' 10 5 1 2 4620 -par_command_len_shellquote ' 10 6 1 2 13854 +par_command_len_shellquote ' 10 6 0 0 0 par_command_len_shellquote ' 10 7 0 0 0 par_command_len_shellquote ' 10 8 0 0 0 par_command_len_shellquote ' 10 9 0 0 0 par_command_len_shellquote ' 10 10 0 0 0 -par_command_len_shellquote " 1 9 parallel: Error: Command line too long (196830 >= 131xxx) at input 0: " -par_command_len_shellquote " 1 10 parallel: Error: Command line too long (590490 >= 131xxx) at input 0: " -par_command_len_shellquote " 2 8 parallel: Error: Command line too long (131xxx >= 131xxx) at input 0: "" -par_command_len_shellquote " 2 9 parallel: Error: Command line too long (393660 >= 131xxx) at input 0: "" -par_command_len_shellquote " 2 10 parallel: Error: Command line too long (1180980 >= 131xxx) at input 0: "" -par_command_len_shellquote " 3 8 parallel: Error: Command line too long (196830 >= 131xxx) at input 0: """ -par_command_len_shellquote " 3 9 parallel: Error: Command line too long (590490 >= 131xxx) at input 0: """ -par_command_len_shellquote " 3 10 parallel: Error: Command line too long (1771470 >= 131xxx) at input 0: """ -par_command_len_shellquote " 4 8 parallel: Error: Command line too long (262440 >= 131xxx) at input 0: """" -par_command_len_shellquote " 4 9 parallel: Error: Command line too long (787320 >= 131xxx) at input 0: """" -par_command_len_shellquote " 4 10 parallel: Error: Command line too long (2361960 >= 131xxx) at input 0: """" -par_command_len_shellquote " 5 8 parallel: Error: Command line too long (328050 >= 131xxx) at input 0: """"" -par_command_len_shellquote " 5 9 parallel: Error: Command line too long (984150 >= 131xxx) at input 0: """"" -par_command_len_shellquote " 5 10 parallel: Error: Command line too long (2952450 >= 131xxx) at input 0: """"" -par_command_len_shellquote " 6 7 parallel: Error: Command line too long (131xxx >= 131xxx) at input 0: """""" -par_command_len_shellquote " 6 8 parallel: Error: Command line too long (393660 >= 131xxx) at input 0: """""" -par_command_len_shellquote " 6 9 parallel: Error: Command line too long (1180980 >= 131xxx) at input 0: """""" -par_command_len_shellquote " 6 10 parallel: Error: Command line too long (3542940 >= 131xxx) at input 0: """""" -par_command_len_shellquote " 7 7 parallel: Error: Command line too long (153090 >= 131xxx) at input 0: """"""" -par_command_len_shellquote " 7 8 parallel: Error: Command line too long (459270 >= 131xxx) at input 0: """"""" -par_command_len_shellquote " 7 9 parallel: Error: Command line too long (1377810 >= 131xxx) at input 0: """"""" -par_command_len_shellquote " 7 10 parallel: Error: Command line too long (4133430 >= 131xxx) at input 0: """"""" -par_command_len_shellquote " 8 7 parallel: Error: Command line too long (174960 >= 131xxx) at input 0: """""""" -par_command_len_shellquote " 8 8 parallel: Error: Command line too long (524880 >= 131xxx) at input 0: """""""" -par_command_len_shellquote " 8 9 parallel: Error: Command line too long (1574640 >= 131xxx) at input 0: """""""" -par_command_len_shellquote " 8 10 parallel: Error: Command line too long (4723920 >= 131xxx) at input 0: """""""" -par_command_len_shellquote " 9 7 parallel: Error: Command line too long (196830 >= 131xxx) at input 0: """"""""" -par_command_len_shellquote " 9 8 parallel: Error: Command line too long (590490 >= 131xxx) at input 0: """"""""" -par_command_len_shellquote " 9 9 parallel: Error: Command line too long (1771470 >= 131xxx) at input 0: """"""""" -par_command_len_shellquote " 9 10 parallel: Error: Command line too long (5314410 >= 131xxx) at input 0: """"""""" -par_command_len_shellquote " 10 7 parallel: Error: Command line too long (218700 >= 131xxx) at input 0: """""""""" -par_command_len_shellquote " 10 8 parallel: Error: Command line too long (656100 >= 131xxx) at input 0: """""""""" -par_command_len_shellquote " 10 9 parallel: Error: Command line too long (1968300 >= 131xxx) at input 0: """""""""" -par_command_len_shellquote " 10 10 parallel: Error: Command line too long (5904900 >= 131xxx) at input 0: """""""""" -par_command_len_shellquote ' 1 9 parallel: Error: Command line too long (196830 >= 131xxx) at input 0: ' -par_command_len_shellquote ' 1 10 parallel: Error: Command line too long (590490 >= 131xxx) at input 0: ' -par_command_len_shellquote ' 2 8 parallel: Error: Command line too long (131xxx >= 131xxx) at input 0: '' -par_command_len_shellquote ' 2 9 parallel: Error: Command line too long (393660 >= 131xxx) at input 0: '' -par_command_len_shellquote ' 2 10 parallel: Error: Command line too long (1180980 >= 131xxx) at input 0: '' -par_command_len_shellquote ' 3 8 parallel: Error: Command line too long (196830 >= 131xxx) at input 0: ''' -par_command_len_shellquote ' 3 9 parallel: Error: Command line too long (590490 >= 131xxx) at input 0: ''' -par_command_len_shellquote ' 3 10 parallel: Error: Command line too long (1771470 >= 131xxx) at input 0: ''' -par_command_len_shellquote ' 4 8 parallel: Error: Command line too long (262440 >= 131xxx) at input 0: '''' -par_command_len_shellquote ' 4 9 parallel: Error: Command line too long (787320 >= 131xxx) at input 0: '''' -par_command_len_shellquote ' 4 10 parallel: Error: Command line too long (2361960 >= 131xxx) at input 0: '''' -par_command_len_shellquote ' 5 8 parallel: Error: Command line too long (328050 >= 131xxx) at input 0: ''''' -par_command_len_shellquote ' 5 9 parallel: Error: Command line too long (984150 >= 131xxx) at input 0: ''''' -par_command_len_shellquote ' 5 10 parallel: Error: Command line too long (2952450 >= 131xxx) at input 0: ''''' -par_command_len_shellquote ' 6 7 parallel: Error: Command line too long (131xxx >= 131xxx) at input 0: '''''' -par_command_len_shellquote ' 6 8 parallel: Error: Command line too long (393660 >= 131xxx) at input 0: '''''' -par_command_len_shellquote ' 6 9 parallel: Error: Command line too long (1180980 >= 131xxx) at input 0: '''''' -par_command_len_shellquote ' 6 10 parallel: Error: Command line too long (3542940 >= 131xxx) at input 0: '''''' -par_command_len_shellquote ' 7 7 parallel: Error: Command line too long (153090 >= 131xxx) at input 0: ''''''' -par_command_len_shellquote ' 7 8 parallel: Error: Command line too long (459270 >= 131xxx) at input 0: ''''''' -par_command_len_shellquote ' 7 9 parallel: Error: Command line too long (1377810 >= 131xxx) at input 0: ''''''' -par_command_len_shellquote ' 7 10 parallel: Error: Command line too long (4133430 >= 131xxx) at input 0: ''''''' -par_command_len_shellquote ' 8 7 parallel: Error: Command line too long (174960 >= 131xxx) at input 0: '''''''' -par_command_len_shellquote ' 8 8 parallel: Error: Command line too long (524880 >= 131xxx) at input 0: '''''''' -par_command_len_shellquote ' 8 9 parallel: Error: Command line too long (1574640 >= 131xxx) at input 0: '''''''' -par_command_len_shellquote ' 8 10 parallel: Error: Command line too long (4723920 >= 131xxx) at input 0: '''''''' -par_command_len_shellquote ' 9 7 parallel: Error: Command line too long (196830 >= 131xxx) at input 0: ''''''''' -par_command_len_shellquote ' 9 8 parallel: Error: Command line too long (590490 >= 131xxx) at input 0: ''''''''' -par_command_len_shellquote ' 9 9 parallel: Error: Command line too long (1771470 >= 131xxx) at input 0: ''''''''' -par_command_len_shellquote ' 9 10 parallel: Error: Command line too long (5314410 >= 131xxx) at input 0: ''''''''' -par_command_len_shellquote ' 10 7 parallel: Error: Command line too long (218700 >= 131xxx) at input 0: '''''''''' -par_command_len_shellquote ' 10 8 parallel: Error: Command line too long (656100 >= 131xxx) at input 0: '''''''''' -par_command_len_shellquote ' 10 9 parallel: Error: Command line too long (1968300 >= 131xxx) at input 0: '''''''''' -par_command_len_shellquote ' 10 10 parallel: Error: Command line too long (5904900 >= 131xxx) at input 0: '''''''''' +par_command_len_shellquote " 1 8 parallel: Error: Command line too long (65xxx >= 64xxx) at input 0: " +par_command_len_shellquote " 1 9 parallel: Error: Command line too long (196xxx >= 64xxx) at input 0: " +par_command_len_shellquote " 1 10 parallel: Error: Command line too long (590xxx >= 64xxx) at input 0: " +par_command_len_shellquote " 2 8 parallel: Error: Command line too long (131xxx >= 64xxx) at input 0: "" +par_command_len_shellquote " 2 9 parallel: Error: Command line too long (393xxx >= 64xxx) at input 0: "" +par_command_len_shellquote " 2 10 parallel: Error: Command line too long (1180xxx >= 64xxx) at input 0: "" +par_command_len_shellquote " 3 7 parallel: Error: Command line too long (65xxx >= 64xxx) at input 0: """ +par_command_len_shellquote " 3 8 parallel: Error: Command line too long (196xxx >= 64xxx) at input 0: """ +par_command_len_shellquote " 3 9 parallel: Error: Command line too long (590xxx >= 64xxx) at input 0: """ +par_command_len_shellquote " 3 10 parallel: Error: Command line too long (1771xxx >= 64xxx) at input 0: """ +par_command_len_shellquote " 4 7 parallel: Error: Command line too long (87xxx >= 64xxx) at input 0: """" +par_command_len_shellquote " 4 8 parallel: Error: Command line too long (262xxx >= 64xxx) at input 0: """" +par_command_len_shellquote " 4 9 parallel: Error: Command line too long (787xxx >= 64xxx) at input 0: """" +par_command_len_shellquote " 4 10 parallel: Error: Command line too long (2361xxx >= 64xxx) at input 0: """" +par_command_len_shellquote " 5 7 parallel: Error: Command line too long (109xxx >= 64xxx) at input 0: """"" +par_command_len_shellquote " 5 8 parallel: Error: Command line too long (328xxx >= 64xxx) at input 0: """"" +par_command_len_shellquote " 5 9 parallel: Error: Command line too long (984xxx >= 64xxx) at input 0: """"" +par_command_len_shellquote " 5 10 parallel: Error: Command line too long (2952xxx >= 64xxx) at input 0: """"" +par_command_len_shellquote " 6 7 parallel: Error: Command line too long (131xxx >= 64xxx) at input 0: """""" +par_command_len_shellquote " 6 8 parallel: Error: Command line too long (393xxx >= 64xxx) at input 0: """""" +par_command_len_shellquote " 6 9 parallel: Error: Command line too long (1180xxx >= 64xxx) at input 0: """""" +par_command_len_shellquote " 6 10 parallel: Error: Command line too long (3542xxx >= 64xxx) at input 0: """""" +par_command_len_shellquote " 7 7 parallel: Error: Command line too long (153xxx >= 64xxx) at input 0: """"""" +par_command_len_shellquote " 7 8 parallel: Error: Command line too long (459xxx >= 64xxx) at input 0: """"""" +par_command_len_shellquote " 7 9 parallel: Error: Command line too long (1377xxx >= 64xxx) at input 0: """"""" +par_command_len_shellquote " 7 10 parallel: Error: Command line too long (4133xxx >= 64xxx) at input 0: """"""" +par_command_len_shellquote " 8 7 parallel: Error: Command line too long (174xxx >= 64xxx) at input 0: """""""" +par_command_len_shellquote " 8 8 parallel: Error: Command line too long (524xxx >= 64xxx) at input 0: """""""" +par_command_len_shellquote " 8 9 parallel: Error: Command line too long (1574xxx >= 64xxx) at input 0: """""""" +par_command_len_shellquote " 8 10 parallel: Error: Command line too long (4723xxx >= 64xxx) at input 0: """""""" +par_command_len_shellquote " 9 6 parallel: Error: Command line too long (65xxx >= 64xxx) at input 0: """"""""" +par_command_len_shellquote " 9 7 parallel: Error: Command line too long (196xxx >= 64xxx) at input 0: """"""""" +par_command_len_shellquote " 9 8 parallel: Error: Command line too long (590xxx >= 64xxx) at input 0: """"""""" +par_command_len_shellquote " 9 9 parallel: Error: Command line too long (1771xxx >= 64xxx) at input 0: """"""""" +par_command_len_shellquote " 9 10 parallel: Error: Command line too long (5314xxx >= 64xxx) at input 0: """"""""" +par_command_len_shellquote " 10 6 parallel: Error: Command line too long (72xxx >= 64xxx) at input 0: """""""""" +par_command_len_shellquote " 10 7 parallel: Error: Command line too long (218xxx >= 64xxx) at input 0: """""""""" +par_command_len_shellquote " 10 8 parallel: Error: Command line too long (656xxx >= 64xxx) at input 0: """""""""" +par_command_len_shellquote " 10 9 parallel: Error: Command line too long (1968xxx >= 64xxx) at input 0: """""""""" +par_command_len_shellquote " 10 10 parallel: Error: Command line too long (5904xxx >= 64xxx) at input 0: """""""""" +par_command_len_shellquote ' 1 8 parallel: Error: Command line too long (65xxx >= 64xxx) at input 0: ' +par_command_len_shellquote ' 1 9 parallel: Error: Command line too long (196xxx >= 64xxx) at input 0: ' +par_command_len_shellquote ' 1 10 parallel: Error: Command line too long (590xxx >= 64xxx) at input 0: ' +par_command_len_shellquote ' 2 8 parallel: Error: Command line too long (131xxx >= 64xxx) at input 0: '' +par_command_len_shellquote ' 2 9 parallel: Error: Command line too long (393xxx >= 64xxx) at input 0: '' +par_command_len_shellquote ' 2 10 parallel: Error: Command line too long (1180xxx >= 64xxx) at input 0: '' +par_command_len_shellquote ' 3 7 parallel: Error: Command line too long (65xxx >= 64xxx) at input 0: ''' +par_command_len_shellquote ' 3 8 parallel: Error: Command line too long (196xxx >= 64xxx) at input 0: ''' +par_command_len_shellquote ' 3 9 parallel: Error: Command line too long (590xxx >= 64xxx) at input 0: ''' +par_command_len_shellquote ' 3 10 parallel: Error: Command line too long (1771xxx >= 64xxx) at input 0: ''' +par_command_len_shellquote ' 4 7 parallel: Error: Command line too long (87xxx >= 64xxx) at input 0: '''' +par_command_len_shellquote ' 4 8 parallel: Error: Command line too long (262xxx >= 64xxx) at input 0: '''' +par_command_len_shellquote ' 4 9 parallel: Error: Command line too long (787xxx >= 64xxx) at input 0: '''' +par_command_len_shellquote ' 4 10 parallel: Error: Command line too long (2361xxx >= 64xxx) at input 0: '''' +par_command_len_shellquote ' 5 7 parallel: Error: Command line too long (109xxx >= 64xxx) at input 0: ''''' +par_command_len_shellquote ' 5 8 parallel: Error: Command line too long (328xxx >= 64xxx) at input 0: ''''' +par_command_len_shellquote ' 5 9 parallel: Error: Command line too long (984xxx >= 64xxx) at input 0: ''''' +par_command_len_shellquote ' 5 10 parallel: Error: Command line too long (2952xxx >= 64xxx) at input 0: ''''' +par_command_len_shellquote ' 6 7 parallel: Error: Command line too long (131xxx >= 64xxx) at input 0: '''''' +par_command_len_shellquote ' 6 8 parallel: Error: Command line too long (393xxx >= 64xxx) at input 0: '''''' +par_command_len_shellquote ' 6 9 parallel: Error: Command line too long (1180xxx >= 64xxx) at input 0: '''''' +par_command_len_shellquote ' 6 10 parallel: Error: Command line too long (3542xxx >= 64xxx) at input 0: '''''' +par_command_len_shellquote ' 7 7 parallel: Error: Command line too long (153xxx >= 64xxx) at input 0: ''''''' +par_command_len_shellquote ' 7 8 parallel: Error: Command line too long (459xxx >= 64xxx) at input 0: ''''''' +par_command_len_shellquote ' 7 9 parallel: Error: Command line too long (1377xxx >= 64xxx) at input 0: ''''''' +par_command_len_shellquote ' 7 10 parallel: Error: Command line too long (4133xxx >= 64xxx) at input 0: ''''''' +par_command_len_shellquote ' 8 7 parallel: Error: Command line too long (174xxx >= 64xxx) at input 0: '''''''' +par_command_len_shellquote ' 8 8 parallel: Error: Command line too long (524xxx >= 64xxx) at input 0: '''''''' +par_command_len_shellquote ' 8 9 parallel: Error: Command line too long (1574xxx >= 64xxx) at input 0: '''''''' +par_command_len_shellquote ' 8 10 parallel: Error: Command line too long (4723xxx >= 64xxx) at input 0: '''''''' +par_command_len_shellquote ' 9 6 parallel: Error: Command line too long (65xxx >= 64xxx) at input 0: ''''''''' +par_command_len_shellquote ' 9 7 parallel: Error: Command line too long (196xxx >= 64xxx) at input 0: ''''''''' +par_command_len_shellquote ' 9 8 parallel: Error: Command line too long (590xxx >= 64xxx) at input 0: ''''''''' +par_command_len_shellquote ' 9 9 parallel: Error: Command line too long (1771xxx >= 64xxx) at input 0: ''''''''' +par_command_len_shellquote ' 9 10 parallel: Error: Command line too long (5314xxx >= 64xxx) at input 0: ''''''''' +par_command_len_shellquote ' 10 6 parallel: Error: Command line too long (72xxx >= 64xxx) at input 0: '''''''''' +par_command_len_shellquote ' 10 7 parallel: Error: Command line too long (218xxx >= 64xxx) at input 0: '''''''''' +par_command_len_shellquote ' 10 8 parallel: Error: Command line too long (656xxx >= 64xxx) at input 0: '''''''''' +par_command_len_shellquote ' 10 9 parallel: Error: Command line too long (1968xxx >= 64xxx) at input 0: '''''''''' +par_command_len_shellquote ' 10 10 parallel: Error: Command line too long (5904xxx >= 64xxx) at input 0: '''''''''' par_basefile_cleanup ### bug #46520: --basefile cleans up without --cleanup par_basefile_cleanup bug_46520 par_basefile_cleanup bug_46520 diff --git a/testsuite/wanted-results/parallel-local-ssh7 b/testsuite/wanted-results/parallel-local-ssh7 index df57ba7f..c02d4fcd 100644 --- a/testsuite/wanted-results/parallel-local-ssh7 +++ b/testsuite/wanted-results/parallel-local-ssh7 @@ -21,7 +21,7 @@ par_zsh_underscore (eval):1: command not found: myecho par_zsh_underscore OK if no .^^^^^^^^^^^^^^^^^^^^^^^^^ myecho par_zsh_underscore zsh:1: command not found: myfunc par_zsh_underscore OK if no .^^^^^^^^^^^^^^^^^^^^^^^^^ myfunc -par_zsh_underscore zsh:1: command not found: myfunc +par_zsh_underscore script:2: command not found: myfunc par_zsh_underscore OK if no .^^^^^^^^^^^^^^^^^^^^^^^^^ myfunc par_zsh_parset parset par_zsh_parset ### parset into array @@ -327,9 +327,9 @@ par_zsh_env_parallel_session l2func par_zsh_env_parallel_session l2alias par_zsh_env_parallel_session level2 array OK par_zsh_env_parallel_session zsh:1: command not found: aliasbefore -par_zsh_env_parallel_session zsh:1: command not found: aliasbefore -par_zsh_env_parallel_session zsh:1: command not found: funcbefore +par_zsh_env_parallel_session script:2: command not found: aliasbefore par_zsh_env_parallel_session zsh:1: command not found: funcbefore +par_zsh_env_parallel_session script:2: command not found: funcbefore par_zsh_env_parallel_session no_before par_zsh_env_parallel_session no_before par_zsh_env_parallel_session no_before @@ -480,13 +480,13 @@ par_sh_underscore variables in aliases work par_sh_underscore variables in aliases work par_sh_underscore variables in aliases work par_sh_underscore variables in aliases work -par_sh_underscore /bin/sh: 3: not_copied_alias: not found +par_sh_underscore script: 4: not_copied_alias: not found par_sh_underscore error=OK par_sh_underscore aliases work par_sh_underscore aliases work par_sh_underscore /bin/sh: 1: myecho: not found par_sh_underscore OK if no myecho ^^^^^^^^^^^^^^^^^ -par_sh_underscore /bin/sh: 1: myecho: not found +par_sh_underscore script: 2: myecho: not found par_sh_underscore OK if no myecho ^^^^^^^^^^^^^^^^^ par_sh_parset parset par_sh_parset ### parset into vars with comma @@ -581,27 +581,9 @@ par_sh_environment_too_big OK_bigfunc_remote par_sh_environment_too_big OK_bigfunc_quote par_sh_environment_too_big OK_bigfunc_quote_remote par_sh_environment_too_big Rest should fail - functions not supported in sh -par_sh_environment_too_big sh: XXX: perl: Argument list too long -par_sh_environment_too_big env_parallel: Error: Your environment is too big. -par_sh_environment_too_big env_parallel: Error: You can try 3 different approaches: -par_sh_environment_too_big env_parallel: Error: 1. Run 'env_parallel --session' before you set -par_sh_environment_too_big env_parallel: Error: variables or define functions. -par_sh_environment_too_big env_parallel: Error: 2. Use --env and only mention the names to copy. -par_sh_environment_too_big env_parallel: Error: 3. Try running this in a clean environment once: -par_sh_environment_too_big env_parallel: Error: env_parallel --record-env -par_sh_environment_too_big env_parallel: Error: And then use '--env _' -par_sh_environment_too_big env_parallel: Error: For details see: man env_parallel +par_sh_environment_too_big parallel: Error: Command line too long (XXX >= XXX) at input 0: fail_bigvar par_sh_environment_too_big parallel: Error: Command line too long (XXX >= XXX) at input 0: fail_bigvar_remote -par_sh_environment_too_big sh: XXX: perl: Argument list too long -par_sh_environment_too_big env_parallel: Error: Your environment is too big. -par_sh_environment_too_big env_parallel: Error: You can try 3 different approaches: -par_sh_environment_too_big env_parallel: Error: 1. Run 'env_parallel --session' before you set -par_sh_environment_too_big env_parallel: Error: variables or define functions. -par_sh_environment_too_big env_parallel: Error: 2. Use --env and only mention the names to copy. -par_sh_environment_too_big env_parallel: Error: 3. Try running this in a clean environment once: -par_sh_environment_too_big env_parallel: Error: env_parallel --record-env -par_sh_environment_too_big env_parallel: Error: And then use '--env _' -par_sh_environment_too_big env_parallel: Error: For details see: man env_parallel +par_sh_environment_too_big parallel: Error: Command line too long (XXX >= XXX) at input 0: fail_bigvar_quote par_sh_environment_too_big parallel: Error: Command line too long (XXX >= XXX) at input 0: fail_bigvar_quote_remote par_sh_environment_too_big fail_bigfunc-not-supported par_sh_environment_too_big fail_bigfunc_remote-not-supported @@ -610,106 +592,106 @@ par_sh_environment_too_big fail_bigfunc_quote_remote-not-supported par_sh_env_parallel_session ### Test env_parallel --session par_sh_env_parallel_session ### level0 should be hidden, level1 should be transferred par_sh_env_parallel_session -par_sh_env_parallel_session /bin/sh: XXX: level0func: not found -par_sh_env_parallel_session /bin/sh: XXX: level0alias: not found -par_sh_env_parallel_session /bin/sh: XXX: Bad substitution +par_sh_env_parallel_session script: 30: level0func: not found +par_sh_env_parallel_session script: 30: level0alias: not found +par_sh_env_parallel_session script: 30: Bad substitution par_sh_env_parallel_session par_sh_env_parallel_session /bin/sh: XXX: level0func: not found par_sh_env_parallel_session /bin/sh: XXX: level0alias: not found par_sh_env_parallel_session /bin/sh: XXX: Bad substitution par_sh_env_parallel_session l1var -par_sh_env_parallel_session /bin/sh: XXX: level1func: not found -par_sh_env_parallel_session /bin/sh: XXX: level1alias: not found -par_sh_env_parallel_session /bin/sh: XXX: Bad substitution +par_sh_env_parallel_session script: 30: level1func: not found +par_sh_env_parallel_session script: 30: level1alias: not found +par_sh_env_parallel_session script: 30: Bad substitution par_sh_env_parallel_session l1var par_sh_env_parallel_session /bin/sh: XXX: level1func: not found par_sh_env_parallel_session /bin/sh: XXX: level1alias: not found par_sh_env_parallel_session /bin/sh: XXX: Bad substitution par_sh_env_parallel_session ### level0+1 should be hidden, level2 should be transferred par_sh_env_parallel_session -par_sh_env_parallel_session /bin/sh: 2: level0func: not found -par_sh_env_parallel_session /bin/sh: 2: level0alias: not found -par_sh_env_parallel_session /bin/sh: 2: Bad substitution +par_sh_env_parallel_session script: 3: level0func: not found +par_sh_env_parallel_session script: 3: level0alias: not found +par_sh_env_parallel_session script: 3: Bad substitution par_sh_env_parallel_session par_sh_env_parallel_session /bin/sh: 2: level0func: not found par_sh_env_parallel_session /bin/sh: 2: level0alias: not found par_sh_env_parallel_session /bin/sh: 2: Bad substitution par_sh_env_parallel_session -par_sh_env_parallel_session /bin/sh: 2: level1func: not found -par_sh_env_parallel_session /bin/sh: 2: level1alias: not found -par_sh_env_parallel_session /bin/sh: 2: Bad substitution +par_sh_env_parallel_session script: 3: level1func: not found +par_sh_env_parallel_session script: 3: level1alias: not found +par_sh_env_parallel_session script: 3: Bad substitution par_sh_env_parallel_session par_sh_env_parallel_session /bin/sh: 2: level1func: not found par_sh_env_parallel_session /bin/sh: 2: level1alias: not found par_sh_env_parallel_session /bin/sh: 2: Bad substitution par_sh_env_parallel_session l2var -par_sh_env_parallel_session /bin/sh: 2: level2func: not found -par_sh_env_parallel_session /bin/sh: 2: level2alias: not found -par_sh_env_parallel_session /bin/sh: 2: Bad substitution +par_sh_env_parallel_session script: 3: level2func: not found +par_sh_env_parallel_session script: 3: level2alias: not found +par_sh_env_parallel_session script: 3: Bad substitution par_sh_env_parallel_session l2var par_sh_env_parallel_session /bin/sh: 2: level2func: not found par_sh_env_parallel_session /bin/sh: 2: level2alias: not found par_sh_env_parallel_session /bin/sh: 2: Bad substitution par_sh_env_parallel_session ### level0 should be hidden, level1+2 should be transferred par_sh_env_parallel_session -par_sh_env_parallel_session /bin/sh: XXX: level0func: not found -par_sh_env_parallel_session /bin/sh: XXX: level0alias: not found -par_sh_env_parallel_session /bin/sh: XXX: Bad substitution +par_sh_env_parallel_session script: 31: level0func: not found +par_sh_env_parallel_session script: 31: level0alias: not found +par_sh_env_parallel_session script: 31: Bad substitution par_sh_env_parallel_session par_sh_env_parallel_session /bin/sh: XXX: level0func: not found par_sh_env_parallel_session /bin/sh: XXX: level0alias: not found par_sh_env_parallel_session /bin/sh: XXX: Bad substitution par_sh_env_parallel_session l1var -par_sh_env_parallel_session /bin/sh: XXX: level1func: not found -par_sh_env_parallel_session /bin/sh: XXX: level1alias: not found -par_sh_env_parallel_session /bin/sh: XXX: Bad substitution +par_sh_env_parallel_session script: 31: level1func: not found +par_sh_env_parallel_session script: 31: level1alias: not found +par_sh_env_parallel_session script: 31: Bad substitution par_sh_env_parallel_session l1var par_sh_env_parallel_session /bin/sh: XXX: level1func: not found par_sh_env_parallel_session /bin/sh: XXX: level1alias: not found par_sh_env_parallel_session /bin/sh: XXX: Bad substitution par_sh_env_parallel_session l2var -par_sh_env_parallel_session /bin/sh: XXX: level2func: not found -par_sh_env_parallel_session /bin/sh: XXX: level2alias: not found -par_sh_env_parallel_session /bin/sh: XXX: Bad substitution +par_sh_env_parallel_session script: 31: level2func: not found +par_sh_env_parallel_session script: 31: level2alias: not found +par_sh_env_parallel_session script: 31: Bad substitution par_sh_env_parallel_session l2var par_sh_env_parallel_session /bin/sh: XXX: level2func: not found par_sh_env_parallel_session /bin/sh: XXX: level2alias: not found par_sh_env_parallel_session /bin/sh: XXX: Bad substitution par_sh_env_parallel_session ### level0+1+2 should be transferred par_sh_env_parallel_session l0var -par_sh_env_parallel_session /bin/sh: XXX: level0func: not found -par_sh_env_parallel_session /bin/sh: XXX: level0alias: not found -par_sh_env_parallel_session /bin/sh: XXX: Bad substitution +par_sh_env_parallel_session script: 29: level0func: not found +par_sh_env_parallel_session script: 29: level0alias: not found +par_sh_env_parallel_session script: 29: Bad substitution par_sh_env_parallel_session l0var par_sh_env_parallel_session /bin/sh: XXX: level0func: not found par_sh_env_parallel_session /bin/sh: XXX: level0alias: not found par_sh_env_parallel_session /bin/sh: XXX: Bad substitution par_sh_env_parallel_session l1var -par_sh_env_parallel_session /bin/sh: XXX: level1func: not found -par_sh_env_parallel_session /bin/sh: XXX: level1alias: not found -par_sh_env_parallel_session /bin/sh: XXX: Bad substitution +par_sh_env_parallel_session script: 29: level1func: not found +par_sh_env_parallel_session script: 29: level1alias: not found +par_sh_env_parallel_session script: 29: Bad substitution par_sh_env_parallel_session l1var par_sh_env_parallel_session /bin/sh: XXX: level1func: not found par_sh_env_parallel_session /bin/sh: XXX: level1alias: not found par_sh_env_parallel_session /bin/sh: XXX: Bad substitution par_sh_env_parallel_session l2var -par_sh_env_parallel_session /bin/sh: XXX: level2func: not found -par_sh_env_parallel_session /bin/sh: XXX: level2alias: not found -par_sh_env_parallel_session /bin/sh: XXX: Bad substitution +par_sh_env_parallel_session script: 29: level2func: not found +par_sh_env_parallel_session script: 29: level2alias: not found +par_sh_env_parallel_session script: 29: Bad substitution par_sh_env_parallel_session l2var par_sh_env_parallel_session /bin/sh: XXX: level2func: not found par_sh_env_parallel_session /bin/sh: XXX: level2alias: not found par_sh_env_parallel_session /bin/sh: XXX: Bad substitution par_sh_env_parallel_session /bin/sh: 1: aliasbefore: not found -par_sh_env_parallel_session /bin/sh: 1: aliasbefore: not found -par_sh_env_parallel_session /bin/sh: 1: funcbefore: not found +par_sh_env_parallel_session script: 2: aliasbefore: not found par_sh_env_parallel_session /bin/sh: 1: funcbefore: not found +par_sh_env_parallel_session script: 2: funcbefore: not found par_sh_env_parallel_session no_before par_sh_env_parallel_session no_before par_sh_env_parallel_session after aliasafter_OK par_sh_env_parallel_session after aliasafter_OK par_sh_env_parallel_session /bin/sh: 3: funcafter: not found -par_sh_env_parallel_session /bin/sh: 3: funcafter: not found +par_sh_env_parallel_session script: 4: funcafter: not found par_sh_env_parallel_session after varafter_OK par_sh_env_parallel_session after varafter_OK par_sh_env_parallel OK @@ -736,8 +718,8 @@ par_mksh_underscore variables in aliases in and arrays in functions work par_mksh_underscore variables in aliases in and arrays in functions work par_mksh_underscore variables in aliases in and arrays in functions work par_mksh_underscore variables in aliases in and arrays in functions work -par_mksh_underscore /bin/mksh: not_copied_alias: inaccessible or not found -par_mksh_underscore /bin/mksh: not_copied_func: inaccessible or not found +par_mksh_underscore script[9]: not_copied_alias: inaccessible or not found +par_mksh_underscore script[9]: not_copied_func: inaccessible or not found par_mksh_underscore error=OK par_mksh_underscore error=OK par_mksh_underscore aliases in and arrays in functions work @@ -750,7 +732,7 @@ par_mksh_underscore aliases in functions work par_mksh_underscore OK if no myecho ^^^^^^^^^^^^^^^^^ par_mksh_underscore /bin/mksh: myfunc: inaccessible or not found par_mksh_underscore OK if no myfunc ^^^^^^^^^^^^^^^^^ -par_mksh_underscore /bin/mksh: myfunc: inaccessible or not found +par_mksh_underscore script[9]: myfunc: inaccessible or not found par_mksh_underscore OK if no myfunc ^^^^^^^^^^^^^^^^^ par_mksh_parset parset par_mksh_parset ### parset into array @@ -886,56 +868,20 @@ par_mksh_environment_too_big OK_bigfunc_remote par_mksh_environment_too_big OK_bigfunc_quote par_mksh_environment_too_big OK_bigfunc_quote_remote par_mksh_environment_too_big Rest should fail -par_mksh_environment_too_big mksh: /bin/perl: Argument list too long -par_mksh_environment_too_big env_parallel: Error: Your environment is too big. -par_mksh_environment_too_big env_parallel: Error: You can try 3 different approaches: -par_mksh_environment_too_big env_parallel: Error: 1. Run 'env_parallel --session' before you set -par_mksh_environment_too_big env_parallel: Error: variables or define functions. -par_mksh_environment_too_big env_parallel: Error: 2. Use --env and only mention the names to copy. -par_mksh_environment_too_big env_parallel: Error: 3. Try running this in a clean environment once: -par_mksh_environment_too_big env_parallel: Error: env_parallel --record-env -par_mksh_environment_too_big env_parallel: Error: And then use '--env _' -par_mksh_environment_too_big env_parallel: Error: For details see: man env_parallel +par_mksh_environment_too_big parallel: Error: Command line too long (XXX >= XXX) at input 0: fail_bigvar par_mksh_environment_too_big parallel: Error: Command line too long (XXX >= XXX) at input 0: fail_bigvar_remote -par_mksh_environment_too_big mksh: /bin/perl: Argument list too long -par_mksh_environment_too_big env_parallel: Error: Your environment is too big. -par_mksh_environment_too_big env_parallel: Error: You can try 3 different approaches: -par_mksh_environment_too_big env_parallel: Error: 1. Run 'env_parallel --session' before you set -par_mksh_environment_too_big env_parallel: Error: variables or define functions. -par_mksh_environment_too_big env_parallel: Error: 2. Use --env and only mention the names to copy. -par_mksh_environment_too_big env_parallel: Error: 3. Try running this in a clean environment once: -par_mksh_environment_too_big env_parallel: Error: env_parallel --record-env -par_mksh_environment_too_big env_parallel: Error: And then use '--env _' -par_mksh_environment_too_big env_parallel: Error: For details see: man env_parallel +par_mksh_environment_too_big parallel: Error: Command line too long (XXX >= XXX) at input 0: fail_bigvar_quote par_mksh_environment_too_big parallel: Error: Command line too long (XXX >= XXX) at input 0: fail_bigvar_quote_remote -par_mksh_environment_too_big mksh: /bin/perl: Argument list too long -par_mksh_environment_too_big env_parallel: Error: Your environment is too big. -par_mksh_environment_too_big env_parallel: Error: You can try 3 different approaches: -par_mksh_environment_too_big env_parallel: Error: 1. Run 'env_parallel --session' before you set -par_mksh_environment_too_big env_parallel: Error: variables or define functions. -par_mksh_environment_too_big env_parallel: Error: 2. Use --env and only mention the names to copy. -par_mksh_environment_too_big env_parallel: Error: 3. Try running this in a clean environment once: -par_mksh_environment_too_big env_parallel: Error: env_parallel --record-env -par_mksh_environment_too_big env_parallel: Error: And then use '--env _' -par_mksh_environment_too_big env_parallel: Error: For details see: man env_parallel +par_mksh_environment_too_big parallel: Error: Command line too long (XXX >= XXX) at input 0: fail_bigfunc par_mksh_environment_too_big parallel: Error: Command line too long (XXX >= XXX) at input 0: fail_bigfunc_remote -par_mksh_environment_too_big mksh: /bin/perl: Argument list too long -par_mksh_environment_too_big env_parallel: Error: Your environment is too big. -par_mksh_environment_too_big env_parallel: Error: You can try 3 different approaches: -par_mksh_environment_too_big env_parallel: Error: 1. Run 'env_parallel --session' before you set -par_mksh_environment_too_big env_parallel: Error: variables or define functions. -par_mksh_environment_too_big env_parallel: Error: 2. Use --env and only mention the names to copy. -par_mksh_environment_too_big env_parallel: Error: 3. Try running this in a clean environment once: -par_mksh_environment_too_big env_parallel: Error: env_parallel --record-env -par_mksh_environment_too_big env_parallel: Error: And then use '--env _' -par_mksh_environment_too_big env_parallel: Error: For details see: man env_parallel +par_mksh_environment_too_big parallel: Error: Command line too long (XXX >= XXX) at input 0: fail_bigfunc_quote par_mksh_environment_too_big parallel: Error: Command line too long (XXX >= XXX) at input 0: fail_bigfunc_quote_remote par_mksh_env_parallel_session ### Test env_parallel --session par_mksh_env_parallel_session ### level0 should be hidden, level1 should be transferred par_mksh_env_parallel_session par_mksh_env_parallel_session fail -par_mksh_env_parallel_session /bin/mksh: level0func: inaccessible or not found -par_mksh_env_parallel_session /bin/mksh: level0alias: inaccessible or not found +par_mksh_env_parallel_session script[9]: level0func: inaccessible or not found +par_mksh_env_parallel_session script[9]: level0alias: inaccessible or not found par_mksh_env_parallel_session par_mksh_env_parallel_session fail par_mksh_env_parallel_session /bin/mksh: level0func: inaccessible or not found @@ -951,16 +897,16 @@ par_mksh_env_parallel_session level1 array OK par_mksh_env_parallel_session ### level0+1 should be hidden, level2 should be transferred par_mksh_env_parallel_session par_mksh_env_parallel_session fail -par_mksh_env_parallel_session /bin/mksh: level0func: inaccessible or not found -par_mksh_env_parallel_session /bin/mksh: level0alias: inaccessible or not found +par_mksh_env_parallel_session script[9]: level0func: inaccessible or not found +par_mksh_env_parallel_session script[9]: level0alias: inaccessible or not found par_mksh_env_parallel_session par_mksh_env_parallel_session fail par_mksh_env_parallel_session /bin/mksh: level0func: inaccessible or not found par_mksh_env_parallel_session /bin/mksh: level0alias: inaccessible or not found par_mksh_env_parallel_session par_mksh_env_parallel_session fail -par_mksh_env_parallel_session /bin/mksh: level1func: inaccessible or not found -par_mksh_env_parallel_session /bin/mksh: level1alias: inaccessible or not found +par_mksh_env_parallel_session script[9]: level1func: inaccessible or not found +par_mksh_env_parallel_session script[9]: level1alias: inaccessible or not found par_mksh_env_parallel_session par_mksh_env_parallel_session fail par_mksh_env_parallel_session /bin/mksh: level1func: inaccessible or not found @@ -976,8 +922,8 @@ par_mksh_env_parallel_session level2 array OK par_mksh_env_parallel_session ### level0 should be hidden, level1+2 should be transferred par_mksh_env_parallel_session par_mksh_env_parallel_session fail -par_mksh_env_parallel_session /bin/mksh: level0func: inaccessible or not found -par_mksh_env_parallel_session /bin/mksh: level0alias: inaccessible or not found +par_mksh_env_parallel_session script[9]: level0func: inaccessible or not found +par_mksh_env_parallel_session script[9]: level0alias: inaccessible or not found par_mksh_env_parallel_session par_mksh_env_parallel_session fail par_mksh_env_parallel_session /bin/mksh: level0func: inaccessible or not found @@ -1024,9 +970,9 @@ par_mksh_env_parallel_session l2func par_mksh_env_parallel_session l2alias par_mksh_env_parallel_session level2 array OK par_mksh_env_parallel_session /bin/mksh: aliasbefore: inaccessible or not found -par_mksh_env_parallel_session /bin/mksh: aliasbefore: inaccessible or not found -par_mksh_env_parallel_session /bin/mksh: funcbefore: inaccessible or not found +par_mksh_env_parallel_session script[9]: aliasbefore: inaccessible or not found par_mksh_env_parallel_session /bin/mksh: funcbefore: inaccessible or not found +par_mksh_env_parallel_session script[9]: funcbefore: inaccessible or not found par_mksh_env_parallel_session no_before par_mksh_env_parallel_session no_before par_mksh_env_parallel_session no_before @@ -1075,8 +1021,8 @@ par_ksh_underscore variables in aliases in and arrays in functions work par_ksh_underscore variables in aliases in and arrays in functions work par_ksh_underscore variables in aliases in and arrays in functions work par_ksh_underscore variables in aliases in and arrays in functions work -par_ksh_underscore /bin/ksh: line 4: not_copied_alias: not found -par_ksh_underscore /bin/ksh: line 4: not_copied_func: not found +par_ksh_underscore script[9]: not_copied_alias: not found [No such file or directory] +par_ksh_underscore script[9]: not_copied_func: not found [No such file or directory] par_ksh_underscore error=OK par_ksh_underscore error=OK par_ksh_underscore aliases in and arrays in functions work @@ -1085,11 +1031,11 @@ par_ksh_underscore aliases in functions work par_ksh_underscore aliases in functions work par_ksh_underscore /bin/ksh: myecho: not found [No such file or directory] par_ksh_underscore OK if no myecho ^^^^^^^^^^^^^^^^^ -par_ksh_underscore /bin/ksh: myecho: not found [No such file or directory] +par_ksh_underscore script[9]: myecho: not found [No such file or directory] par_ksh_underscore OK if no myecho ^^^^^^^^^^^^^^^^^ par_ksh_underscore /bin/ksh: myfunc: not found par_ksh_underscore OK if no myfunc ^^^^^^^^^^^^^^^^^ -par_ksh_underscore /bin/ksh: myfunc: not found +par_ksh_underscore script[9]: myfunc: not found [No such file or directory] par_ksh_underscore OK if no myfunc ^^^^^^^^^^^^^^^^^ par_ksh_parset parset par_ksh_parset ### parset into array @@ -1229,65 +1175,20 @@ par_ksh_environment_too_big OK_bigfunc_remote par_ksh_environment_too_big OK_bigfunc_quote par_ksh_environment_too_big OK_bigfunc_quote_remote par_ksh_environment_too_big Rest should fail -par_ksh_environment_too_big ksh[XXX]: perl: /bin/perl: cannot execute [Argument list too long] -par_ksh_environment_too_big env_parallel: Error: Your environment is too big. -par_ksh_environment_too_big env_parallel: Error: You can try 3 different approaches: -par_ksh_environment_too_big env_parallel: Error: 1. Run 'env_parallel --session' before you set -par_ksh_environment_too_big env_parallel: Error: variables or define functions. -par_ksh_environment_too_big env_parallel: Error: 2. Use --env and only mention the names to copy. -par_ksh_environment_too_big env_parallel: Error: 3. Try running this in a clean environment once: -par_ksh_environment_too_big env_parallel: Error: env_parallel --record-env -par_ksh_environment_too_big env_parallel: Error: And then use '--env _' -par_ksh_environment_too_big env_parallel: Error: For details see: man env_parallel +par_ksh_environment_too_big parallel: Error: Command line too long (XXX >= XXX) at input 0: fail_bigvar par_ksh_environment_too_big parallel: Error: Command line too long (XXX >= XXX) at input 0: fail_bigvar_remote -par_ksh_environment_too_big ksh[XXX]: perl: /bin/perl: cannot execute [Argument list too long] -par_ksh_environment_too_big env_parallel: Error: Your environment is too big. -par_ksh_environment_too_big env_parallel: Error: You can try 3 different approaches: -par_ksh_environment_too_big env_parallel: Error: 1. Run 'env_parallel --session' before you set -par_ksh_environment_too_big env_parallel: Error: variables or define functions. -par_ksh_environment_too_big env_parallel: Error: 2. Use --env and only mention the names to copy. -par_ksh_environment_too_big env_parallel: Error: 3. Try running this in a clean environment once: -par_ksh_environment_too_big env_parallel: Error: env_parallel --record-env -par_ksh_environment_too_big env_parallel: Error: And then use '--env _' -par_ksh_environment_too_big env_parallel: Error: For details see: man env_parallel +par_ksh_environment_too_big parallel: Error: Command line too long (XXX >= XXX) at input 0: fail_bigvar_quote par_ksh_environment_too_big parallel: Error: Command line too long (XXX >= XXX) at input 0: fail_bigvar_quote_remote -par_ksh_environment_too_big ksh[XXX]: perl: /bin/perl: cannot execute [Argument list too long] -par_ksh_environment_too_big env_parallel: Error: Your environment is too big. -par_ksh_environment_too_big env_parallel: Error: You can try 3 different approaches: -par_ksh_environment_too_big env_parallel: Error: 1. Run 'env_parallel --session' before you set -par_ksh_environment_too_big env_parallel: Error: variables or define functions. -par_ksh_environment_too_big env_parallel: Error: 2. Use --env and only mention the names to copy. -par_ksh_environment_too_big env_parallel: Error: 3. Try running this in a clean environment once: -par_ksh_environment_too_big env_parallel: Error: env_parallel --record-env -par_ksh_environment_too_big env_parallel: Error: And then use '--env _' -par_ksh_environment_too_big env_parallel: Error: For details see: man env_parallel +par_ksh_environment_too_big parallel: Error: Command line too long (XXX >= XXX) at input 0: fail_bigfunc par_ksh_environment_too_big parallel: Error: Command line too long (XXX >= XXX) at input 0: fail_bigfunc_remote -par_ksh_environment_too_big ksh[XXX]: perl: /bin/perl: cannot execute [Argument list too long] -par_ksh_environment_too_big env_parallel: Error: Your environment is too big. -par_ksh_environment_too_big env_parallel: Error: You can try 3 different approaches: -par_ksh_environment_too_big env_parallel: Error: 1. Run 'env_parallel --session' before you set -par_ksh_environment_too_big env_parallel: Error: variables or define functions. -par_ksh_environment_too_big env_parallel: Error: 2. Use --env and only mention the names to copy. -par_ksh_environment_too_big env_parallel: Error: 3. Try running this in a clean environment once: -par_ksh_environment_too_big env_parallel: Error: env_parallel --record-env -par_ksh_environment_too_big env_parallel: Error: And then use '--env _' -par_ksh_environment_too_big env_parallel: Error: For details see: man env_parallel -par_ksh_environment_too_big ksh[XXX]: perl: /bin/perl: cannot execute [Argument list too long] -par_ksh_environment_too_big env_parallel: Error: Your environment is too big. -par_ksh_environment_too_big env_parallel: Error: You can try 3 different approaches: -par_ksh_environment_too_big env_parallel: Error: 1. Run 'env_parallel --session' before you set -par_ksh_environment_too_big env_parallel: Error: variables or define functions. -par_ksh_environment_too_big env_parallel: Error: 2. Use --env and only mention the names to copy. -par_ksh_environment_too_big env_parallel: Error: 3. Try running this in a clean environment once: -par_ksh_environment_too_big env_parallel: Error: env_parallel --record-env -par_ksh_environment_too_big env_parallel: Error: And then use '--env _' -par_ksh_environment_too_big env_parallel: Error: For details see: man env_parallel +par_ksh_environment_too_big parallel: Error: Command line too long (XXX >= XXX) at input 0: fail_bigfunc_quote +par_ksh_environment_too_big parallel: Error: Command line too long (XXX >= XXX) at input 0: fail_bigfunc_quote_remote par_ksh_env_parallel_session ### Test env_parallel --session par_ksh_env_parallel_session ### level0 should be hidden, level1 should be transferred par_ksh_env_parallel_session par_ksh_env_parallel_session fail -par_ksh_env_parallel_session /bin/ksh[XXX]: level0func: not found [No such file or directory] -par_ksh_env_parallel_session /bin/ksh[XXX]: level0alias: not found [No such file or directory] +par_ksh_env_parallel_session script[9]: level0func: not found [No such file or directory] +par_ksh_env_parallel_session script[9]: level0alias: not found [No such file or directory] par_ksh_env_parallel_session par_ksh_env_parallel_session fail par_ksh_env_parallel_session /bin/ksh[XXX]: level0func: not found [No such file or directory] @@ -1303,16 +1204,16 @@ par_ksh_env_parallel_session level1 array OK par_ksh_env_parallel_session ### level0+1 should be hidden, level2 should be transferred par_ksh_env_parallel_session par_ksh_env_parallel_session fail -par_ksh_env_parallel_session /bin/ksh[XXX]: level0func: not found [No such file or directory] -par_ksh_env_parallel_session /bin/ksh[XXX]: level0alias: not found [No such file or directory] +par_ksh_env_parallel_session script[9]: level0func: not found [No such file or directory] +par_ksh_env_parallel_session script[9]: level0alias: not found [No such file or directory] par_ksh_env_parallel_session par_ksh_env_parallel_session fail par_ksh_env_parallel_session /bin/ksh[XXX]: level0func: not found [No such file or directory] par_ksh_env_parallel_session /bin/ksh[XXX]: level0alias: not found [No such file or directory] par_ksh_env_parallel_session par_ksh_env_parallel_session fail -par_ksh_env_parallel_session /bin/ksh[XXX]: level1func: not found [No such file or directory] -par_ksh_env_parallel_session /bin/ksh[XXX]: level1alias: not found [No such file or directory] +par_ksh_env_parallel_session script[9]: level1func: not found [No such file or directory] +par_ksh_env_parallel_session script[9]: level1alias: not found [No such file or directory] par_ksh_env_parallel_session par_ksh_env_parallel_session fail par_ksh_env_parallel_session /bin/ksh[XXX]: level1func: not found [No such file or directory] @@ -1328,8 +1229,8 @@ par_ksh_env_parallel_session level2 array OK par_ksh_env_parallel_session ### level0 should be hidden, level1+2 should be transferred par_ksh_env_parallel_session par_ksh_env_parallel_session fail -par_ksh_env_parallel_session /bin/ksh[XXX]: level0func: not found [No such file or directory] -par_ksh_env_parallel_session /bin/ksh[XXX]: level0alias: not found [No such file or directory] +par_ksh_env_parallel_session script[9]: level0func: not found [No such file or directory] +par_ksh_env_parallel_session script[9]: level0alias: not found [No such file or directory] par_ksh_env_parallel_session par_ksh_env_parallel_session fail par_ksh_env_parallel_session /bin/ksh[XXX]: level0func: not found [No such file or directory] @@ -1376,9 +1277,9 @@ par_ksh_env_parallel_session l2func par_ksh_env_parallel_session l2alias par_ksh_env_parallel_session level2 array OK par_ksh_env_parallel_session /bin/ksh: line 3: aliasbefore: not found -par_ksh_env_parallel_session /bin/ksh: line 3: aliasbefore: not found -par_ksh_env_parallel_session /bin/ksh: line 3: funcbefore: not found +par_ksh_env_parallel_session script[9]: aliasbefore: not found [No such file or directory] par_ksh_env_parallel_session /bin/ksh: line 3: funcbefore: not found +par_ksh_env_parallel_session script[9]: funcbefore: not found [No such file or directory] par_ksh_env_parallel_session no_before par_ksh_env_parallel_session no_before par_ksh_env_parallel_session no_before @@ -1426,8 +1327,10 @@ par_fish_underscore variables in aliases and arrays in functions work par_fish_underscore variables in aliases and arrays in functions work par_fish_underscore variables in aliases and arrays in functions work par_fish_underscore variables in aliases and arrays in functions work +par_fish_underscore script (line 15): par_fish_underscore not_copied_alias 'error=OK' par_fish_underscore ^ +par_fish_underscore script (line 15): par_fish_underscore not_copied_func 'error=OK' par_fish_underscore ^ par_fish_underscore error=OK @@ -1440,13 +1343,16 @@ par_fish_underscore myecho $myarray functions $argv par_fish_underscore ^ par_fish_underscore in function 'myfunc' with arguments 'work' par_fish_underscore OK if ^^^^^^^^^^^^^^^^^ no myecho +par_fish_underscore script (line 3): par_fish_underscore myecho $myarray functions $argv par_fish_underscore ^ par_fish_underscore in function 'myfunc' with arguments 'work' +par_fish_underscore called on line 9 of file script par_fish_underscore OK if ^^^^^^^^^^^^^^^^^ no myecho par_fish_underscore myfunc work par_fish_underscore ^ par_fish_underscore OK if ^^^^^^^^^^^^^^^^^ no myfunc +par_fish_underscore script (line 6): par_fish_underscore myfunc work par_fish_underscore ^ par_fish_underscore OK if ^^^^^^^^^^^^^^^^^ no myfunc @@ -1540,7 +1446,7 @@ par_fish_env_parallel_session fish: par_fish_env_parallel_session aliasbefore must_fail par_fish_env_parallel_session ^ par_fish_env_parallel_session fish: Unknown command: aliasbefore -par_fish_env_parallel_session fish: +par_fish_env_parallel_session script (line 6): par_fish_env_parallel_session aliasbefore must_fail par_fish_env_parallel_session ^ par_fish_env_parallel_session fish: Unknown command: funcbefore @@ -1548,7 +1454,7 @@ par_fish_env_parallel_session fish: par_fish_env_parallel_session funcbefore must_fail par_fish_env_parallel_session ^ par_fish_env_parallel_session fish: Unknown command: funcbefore -par_fish_env_parallel_session fish: +par_fish_env_parallel_session script (line 6): par_fish_env_parallel_session funcbefore must_fail par_fish_env_parallel_session ^ par_fish_env_parallel_session no_before @@ -1580,13 +1486,13 @@ par_dash_underscore variables in aliases work par_dash_underscore variables in aliases work par_dash_underscore variables in aliases work par_dash_underscore variables in aliases work -par_dash_underscore /bin/dash: 3: not_copied_alias: not found +par_dash_underscore script: 4: not_copied_alias: not found par_dash_underscore error=OK par_dash_underscore aliases work par_dash_underscore aliases work par_dash_underscore /bin/dash: 1: myecho: not found par_dash_underscore OK if no myecho ^^^^^^^^^^^^^^^^^ -par_dash_underscore /bin/dash: 1: myecho: not found +par_dash_underscore script: 2: myecho: not found par_dash_underscore OK if no myecho ^^^^^^^^^^^^^^^^^ par_dash_parset parset par_dash_parset ### parset into vars with comma @@ -1667,27 +1573,9 @@ par_dash_environment_too_big OK_bigfunc_remote par_dash_environment_too_big OK_bigfunc_quote par_dash_environment_too_big OK_bigfunc_quote_remote par_dash_environment_too_big Rest should fail - functions not supported in dash -par_dash_environment_too_big dash: XXX: perl: Argument list too long -par_dash_environment_too_big env_parallel: Error: Your environment is too big. -par_dash_environment_too_big env_parallel: Error: You can try 3 different approaches: -par_dash_environment_too_big env_parallel: Error: 1. Run 'env_parallel --session' before you set -par_dash_environment_too_big env_parallel: Error: variables or define functions. -par_dash_environment_too_big env_parallel: Error: 2. Use --env and only mention the names to copy. -par_dash_environment_too_big env_parallel: Error: 3. Try running this in a clean environment once: -par_dash_environment_too_big env_parallel: Error: env_parallel --record-env -par_dash_environment_too_big env_parallel: Error: And then use '--env _' -par_dash_environment_too_big env_parallel: Error: For details see: man env_parallel +par_dash_environment_too_big parallel: Error: Command line too long (XXX >= XXX) at input 0: fail_bigvar par_dash_environment_too_big parallel: Error: Command line too long (XXX >= XXX) at input 0: fail_bigvar_remote -par_dash_environment_too_big dash: XXX: perl: Argument list too long -par_dash_environment_too_big env_parallel: Error: Your environment is too big. -par_dash_environment_too_big env_parallel: Error: You can try 3 different approaches: -par_dash_environment_too_big env_parallel: Error: 1. Run 'env_parallel --session' before you set -par_dash_environment_too_big env_parallel: Error: variables or define functions. -par_dash_environment_too_big env_parallel: Error: 2. Use --env and only mention the names to copy. -par_dash_environment_too_big env_parallel: Error: 3. Try running this in a clean environment once: -par_dash_environment_too_big env_parallel: Error: env_parallel --record-env -par_dash_environment_too_big env_parallel: Error: And then use '--env _' -par_dash_environment_too_big env_parallel: Error: For details see: man env_parallel +par_dash_environment_too_big parallel: Error: Command line too long (XXX >= XXX) at input 0: fail_bigvar_quote par_dash_environment_too_big parallel: Error: Command line too long (XXX >= XXX) at input 0: fail_bigvar_quote_remote par_dash_environment_too_big fail_bigfunc-not-supported par_dash_environment_too_big fail_bigfunc_remote-not-supported @@ -1696,67 +1584,67 @@ par_dash_environment_too_big fail_bigfunc_quote_remote-not-supported par_dash_env_parallel_session ### Test env_parallel --session par_dash_env_parallel_session ### level0 should be hidden, level1 should be transferred par_dash_env_parallel_session -par_dash_env_parallel_session /bin/dash: XXX: level0func: not found -par_dash_env_parallel_session /bin/dash: XXX: level0alias: not found -par_dash_env_parallel_session /bin/dash: XXX: Bad substitution +par_dash_env_parallel_session script: 33: level0func: not found +par_dash_env_parallel_session script: 33: level0alias: not found +par_dash_env_parallel_session script: 33: Bad substitution par_dash_env_parallel_session par_dash_env_parallel_session /bin/dash: XXX: level0func: not found par_dash_env_parallel_session /bin/dash: XXX: level0alias: not found par_dash_env_parallel_session /bin/dash: XXX: Bad substitution par_dash_env_parallel_session l1var par_dash_env_parallel_session l1alias -par_dash_env_parallel_session /bin/dash: XXX: level1func: not found -par_dash_env_parallel_session /bin/dash: XXX: Bad substitution +par_dash_env_parallel_session script: 33: level1func: not found +par_dash_env_parallel_session script: 33: Bad substitution par_dash_env_parallel_session l1var par_dash_env_parallel_session l1alias par_dash_env_parallel_session /bin/dash: XXX: level1func: not found par_dash_env_parallel_session /bin/dash: XXX: Bad substitution par_dash_env_parallel_session ### level0+1 should be hidden, level2 should be transferred par_dash_env_parallel_session -par_dash_env_parallel_session /bin/dash: 3: level0func: not found -par_dash_env_parallel_session /bin/dash: 3: level0alias: not found -par_dash_env_parallel_session /bin/dash: 3: Bad substitution +par_dash_env_parallel_session script: 4: level0func: not found +par_dash_env_parallel_session script: 4: level0alias: not found +par_dash_env_parallel_session script: 4: Bad substitution par_dash_env_parallel_session par_dash_env_parallel_session /bin/dash: 3: level0func: not found par_dash_env_parallel_session /bin/dash: 3: level0alias: not found par_dash_env_parallel_session /bin/dash: 3: Bad substitution par_dash_env_parallel_session -par_dash_env_parallel_session /bin/dash: 3: level1func: not found -par_dash_env_parallel_session /bin/dash: 3: level1alias: not found -par_dash_env_parallel_session /bin/dash: 3: Bad substitution +par_dash_env_parallel_session script: 4: level1func: not found +par_dash_env_parallel_session script: 4: level1alias: not found +par_dash_env_parallel_session script: 4: Bad substitution par_dash_env_parallel_session par_dash_env_parallel_session /bin/dash: 3: level1func: not found par_dash_env_parallel_session /bin/dash: 3: level1alias: not found par_dash_env_parallel_session /bin/dash: 3: Bad substitution par_dash_env_parallel_session l2var par_dash_env_parallel_session l2alias -par_dash_env_parallel_session /bin/dash: 3: level2func: not found -par_dash_env_parallel_session /bin/dash: 3: Bad substitution +par_dash_env_parallel_session script: 4: level2func: not found +par_dash_env_parallel_session script: 4: Bad substitution par_dash_env_parallel_session l2var par_dash_env_parallel_session l2alias par_dash_env_parallel_session /bin/dash: 3: level2func: not found par_dash_env_parallel_session /bin/dash: 3: Bad substitution par_dash_env_parallel_session ### level0 should be hidden, level1+2 should be transferred par_dash_env_parallel_session -par_dash_env_parallel_session /bin/dash: XXX: level0func: not found -par_dash_env_parallel_session /bin/dash: XXX: level0alias: not found -par_dash_env_parallel_session /bin/dash: XXX: Bad substitution +par_dash_env_parallel_session script: 35: level0func: not found +par_dash_env_parallel_session script: 35: level0alias: not found +par_dash_env_parallel_session script: 35: Bad substitution par_dash_env_parallel_session par_dash_env_parallel_session /bin/dash: XXX: level0func: not found par_dash_env_parallel_session /bin/dash: XXX: level0alias: not found par_dash_env_parallel_session /bin/dash: XXX: Bad substitution par_dash_env_parallel_session l1var par_dash_env_parallel_session l1alias -par_dash_env_parallel_session /bin/dash: XXX: level1func: not found -par_dash_env_parallel_session /bin/dash: XXX: Bad substitution +par_dash_env_parallel_session script: 35: level1func: not found +par_dash_env_parallel_session script: 35: Bad substitution par_dash_env_parallel_session l1var par_dash_env_parallel_session l1alias par_dash_env_parallel_session /bin/dash: XXX: level1func: not found par_dash_env_parallel_session /bin/dash: XXX: Bad substitution par_dash_env_parallel_session l2var par_dash_env_parallel_session l2alias -par_dash_env_parallel_session /bin/dash: XXX: level2func: not found -par_dash_env_parallel_session /bin/dash: XXX: Bad substitution +par_dash_env_parallel_session script: 35: level2func: not found +par_dash_env_parallel_session script: 35: Bad substitution par_dash_env_parallel_session l2var par_dash_env_parallel_session l2alias par_dash_env_parallel_session /bin/dash: XXX: level2func: not found @@ -1764,30 +1652,30 @@ par_dash_env_parallel_session /bin/dash: XXX: Bad substitution par_dash_env_parallel_session ### level0+1+2 should be transferred par_dash_env_parallel_session l0var par_dash_env_parallel_session l0alias -par_dash_env_parallel_session /bin/dash: XXX: level0func: not found -par_dash_env_parallel_session /bin/dash: XXX: Bad substitution +par_dash_env_parallel_session script: 32: level0func: not found +par_dash_env_parallel_session script: 32: Bad substitution par_dash_env_parallel_session l0var par_dash_env_parallel_session l0alias par_dash_env_parallel_session /bin/dash: XXX: level0func: not found par_dash_env_parallel_session /bin/dash: XXX: Bad substitution par_dash_env_parallel_session l1var par_dash_env_parallel_session l1alias -par_dash_env_parallel_session /bin/dash: XXX: level1func: not found -par_dash_env_parallel_session /bin/dash: XXX: Bad substitution +par_dash_env_parallel_session script: 32: level1func: not found +par_dash_env_parallel_session script: 32: Bad substitution par_dash_env_parallel_session l1var par_dash_env_parallel_session l1alias par_dash_env_parallel_session /bin/dash: XXX: level1func: not found par_dash_env_parallel_session /bin/dash: XXX: Bad substitution par_dash_env_parallel_session l2var par_dash_env_parallel_session l2alias -par_dash_env_parallel_session /bin/dash: XXX: level2func: not found -par_dash_env_parallel_session /bin/dash: XXX: Bad substitution +par_dash_env_parallel_session script: 32: level2func: not found +par_dash_env_parallel_session script: 32: Bad substitution par_dash_env_parallel_session l2var par_dash_env_parallel_session l2alias par_dash_env_parallel_session /bin/dash: XXX: level2func: not found par_dash_env_parallel_session /bin/dash: XXX: Bad substitution par_dash_env_parallel_session /bin/dash: 1: aliasbefore: not found -par_dash_env_parallel_session /bin/dash: 1: aliasbefore: not found +par_dash_env_parallel_session script: 2: aliasbefore: not found par_dash_env_parallel_session no_before par_dash_env_parallel_session no_before par_dash_env_parallel_session after aliasafter_OK @@ -1927,8 +1815,8 @@ par_bash_underscore variables in aliases in and arrays in functions work par_bash_underscore variables in aliases in and arrays in functions work par_bash_underscore variables in aliases in and arrays in functions work par_bash_underscore variables in aliases in and arrays in functions work -par_bash_underscore /bin/bash: line XX: not_copied_alias: command not found -par_bash_underscore /bin/bash: line XX: not_copied_func: command not found +par_bash_underscore script: line XX: not_copied_alias: command not found +par_bash_underscore script: line XX: not_copied_func: command not found par_bash_underscore error=OK par_bash_underscore error=OK par_bash_underscore aliases in and arrays in functions work @@ -1937,11 +1825,11 @@ par_bash_underscore aliases in functions work par_bash_underscore aliases in functions work par_bash_underscore /bin/bash: line XX: myecho: command not found par_bash_underscore OK if no myecho ^^^^^^^^^^^^^^^^^^^^^^^^^ -par_bash_underscore /bin/bash: line XX: myecho: command not found +par_bash_underscore script: line XX: myecho: command not found par_bash_underscore OK if no myecho ^^^^^^^^^^^^^^^^^^^^^^^^^ par_bash_underscore /bin/bash: line XX: myfunc: command not found par_bash_underscore OK if no myfunc ^^^^^^^^^^^^^^^^^^^^^^^^^ -par_bash_underscore /bin/bash: line XX: myfunc: command not found +par_bash_underscore script: line XX: myfunc: command not found par_bash_underscore OK if no myfunc ^^^^^^^^^^^^^^^^^^^^^^^^^ par_bash_parset parset par_bash_parset ### parset into array @@ -2088,65 +1976,20 @@ par_bash_environment_too_big OK_bigfunc_remote par_bash_environment_too_big OK_bigfunc_quote par_bash_environment_too_big OK_bigfunc_quote_remote par_bash_environment_too_big Rest should fail -par_bash_environment_too_big /usr/local/bin/env_parallel.bash: line XXX: /bin/perl: Argument list too long -par_bash_environment_too_big env_parallel: Error: Your environment is too big. -par_bash_environment_too_big env_parallel: Error: You can try 3 different approaches: -par_bash_environment_too_big env_parallel: Error: 1. Run 'env_parallel --session' before you set -par_bash_environment_too_big env_parallel: Error: variables or define functions. -par_bash_environment_too_big env_parallel: Error: 2. Use --env and only mention the names to copy. -par_bash_environment_too_big env_parallel: Error: 3. Try running this in a clean environment once: -par_bash_environment_too_big env_parallel: Error: env_parallel --record-env -par_bash_environment_too_big env_parallel: Error: And then use '--env _' -par_bash_environment_too_big env_parallel: Error: For details see: man env_parallel +par_bash_environment_too_big parallel: Error: Command line too long (XXX >= XXX) at input 0: fail_bigvar par_bash_environment_too_big parallel: Error: Command line too long (XXX >= XXX) at input 0: fail_bigvar_remote -par_bash_environment_too_big /usr/local/bin/env_parallel.bash: line XXX: /bin/perl: Argument list too long -par_bash_environment_too_big env_parallel: Error: Your environment is too big. -par_bash_environment_too_big env_parallel: Error: You can try 3 different approaches: -par_bash_environment_too_big env_parallel: Error: 1. Run 'env_parallel --session' before you set -par_bash_environment_too_big env_parallel: Error: variables or define functions. -par_bash_environment_too_big env_parallel: Error: 2. Use --env and only mention the names to copy. -par_bash_environment_too_big env_parallel: Error: 3. Try running this in a clean environment once: -par_bash_environment_too_big env_parallel: Error: env_parallel --record-env -par_bash_environment_too_big env_parallel: Error: And then use '--env _' -par_bash_environment_too_big env_parallel: Error: For details see: man env_parallel +par_bash_environment_too_big parallel: Error: Command line too long (XXX >= XXX) at input 0: fail_bigvar_quote par_bash_environment_too_big parallel: Error: Command line too long (XXX >= XXX) at input 0: fail_bigvar_quote_remote -par_bash_environment_too_big /usr/local/bin/env_parallel.bash: line XXX: /bin/perl: Argument list too long -par_bash_environment_too_big env_parallel: Error: Your environment is too big. -par_bash_environment_too_big env_parallel: Error: You can try 3 different approaches: -par_bash_environment_too_big env_parallel: Error: 1. Run 'env_parallel --session' before you set -par_bash_environment_too_big env_parallel: Error: variables or define functions. -par_bash_environment_too_big env_parallel: Error: 2. Use --env and only mention the names to copy. -par_bash_environment_too_big env_parallel: Error: 3. Try running this in a clean environment once: -par_bash_environment_too_big env_parallel: Error: env_parallel --record-env -par_bash_environment_too_big env_parallel: Error: And then use '--env _' -par_bash_environment_too_big env_parallel: Error: For details see: man env_parallel +par_bash_environment_too_big parallel: Error: Command line too long (XXX >= XXX) at input 0: fail_bigfunc par_bash_environment_too_big parallel: Error: Command line too long (XXX >= XXX) at input 0: fail_bigfunc_remote -par_bash_environment_too_big /usr/local/bin/env_parallel.bash: line XXX: /bin/perl: Argument list too long -par_bash_environment_too_big env_parallel: Error: Your environment is too big. -par_bash_environment_too_big env_parallel: Error: You can try 3 different approaches: -par_bash_environment_too_big env_parallel: Error: 1. Run 'env_parallel --session' before you set -par_bash_environment_too_big env_parallel: Error: variables or define functions. -par_bash_environment_too_big env_parallel: Error: 2. Use --env and only mention the names to copy. -par_bash_environment_too_big env_parallel: Error: 3. Try running this in a clean environment once: -par_bash_environment_too_big env_parallel: Error: env_parallel --record-env -par_bash_environment_too_big env_parallel: Error: And then use '--env _' -par_bash_environment_too_big env_parallel: Error: For details see: man env_parallel -par_bash_environment_too_big /usr/local/bin/env_parallel.bash: line XXX: /bin/perl: Argument list too long -par_bash_environment_too_big env_parallel: Error: Your environment is too big. -par_bash_environment_too_big env_parallel: Error: You can try 3 different approaches: -par_bash_environment_too_big env_parallel: Error: 1. Run 'env_parallel --session' before you set -par_bash_environment_too_big env_parallel: Error: variables or define functions. -par_bash_environment_too_big env_parallel: Error: 2. Use --env and only mention the names to copy. -par_bash_environment_too_big env_parallel: Error: 3. Try running this in a clean environment once: -par_bash_environment_too_big env_parallel: Error: env_parallel --record-env -par_bash_environment_too_big env_parallel: Error: And then use '--env _' -par_bash_environment_too_big env_parallel: Error: For details see: man env_parallel +par_bash_environment_too_big parallel: Error: Command line too long (XXX >= XXX) at input 0: fail_bigfunc_quote +par_bash_environment_too_big parallel: Error: Command line too long (XXX >= XXX) at input 0: fail_bigfunc_quote_remote par_bash_env_parallel_session ### Test env_parallel --session / --end-session par_bash_env_parallel_session ### level0 should be hidden, level1 should be transferred par_bash_env_parallel_session par_bash_env_parallel_session fail -par_bash_env_parallel_session /bin/bash: line XXX: level0func: command not found -par_bash_env_parallel_session /bin/bash: line XXX: level0alias: command not found +par_bash_env_parallel_session script: line XXX: level0func: command not found +par_bash_env_parallel_session script: line XXX: level0alias: command not found par_bash_env_parallel_session par_bash_env_parallel_session fail par_bash_env_parallel_session /bin/bash: line XXX: level0func: command not found @@ -2162,16 +2005,16 @@ par_bash_env_parallel_session level1 array OK par_bash_env_parallel_session ### level0+1 should be hidden, level2 should be transferred par_bash_env_parallel_session par_bash_env_parallel_session fail -par_bash_env_parallel_session /bin/bash: line XXX: level0func: command not found -par_bash_env_parallel_session /bin/bash: line XXX: level0alias: command not found +par_bash_env_parallel_session script: line XXX: level0func: command not found +par_bash_env_parallel_session script: line XXX: level0alias: command not found par_bash_env_parallel_session par_bash_env_parallel_session fail par_bash_env_parallel_session /bin/bash: line XXX: level0func: command not found par_bash_env_parallel_session /bin/bash: line XXX: level0alias: command not found par_bash_env_parallel_session par_bash_env_parallel_session fail -par_bash_env_parallel_session /bin/bash: line XXX: level1func: command not found -par_bash_env_parallel_session /bin/bash: line XXX: level1alias: command not found +par_bash_env_parallel_session script: line XXX: level1func: command not found +par_bash_env_parallel_session script: line XXX: level1alias: command not found par_bash_env_parallel_session par_bash_env_parallel_session fail par_bash_env_parallel_session /bin/bash: line XXX: level1func: command not found @@ -2187,8 +2030,8 @@ par_bash_env_parallel_session level2 array OK par_bash_env_parallel_session ### level0 should be hidden, level1+2 should be transferred par_bash_env_parallel_session par_bash_env_parallel_session fail -par_bash_env_parallel_session /bin/bash: line XXX: level0func: command not found -par_bash_env_parallel_session /bin/bash: line XXX: level0alias: command not found +par_bash_env_parallel_session script: line XXX: level0func: command not found +par_bash_env_parallel_session script: line XXX: level0alias: command not found par_bash_env_parallel_session par_bash_env_parallel_session fail par_bash_env_parallel_session /bin/bash: line XXX: level0func: command not found @@ -2235,9 +2078,9 @@ par_bash_env_parallel_session l2func par_bash_env_parallel_session l2alias par_bash_env_parallel_session level2 array OK par_bash_env_parallel_session /bin/bash: line XXX: aliasl0: command not found -par_bash_env_parallel_session /bin/bash: line XXX: aliasl0: command not found -par_bash_env_parallel_session /bin/bash: line XXX: funcl0: command not found +par_bash_env_parallel_session script: line XXX: aliasl0: command not found par_bash_env_parallel_session /bin/bash: line XXX: funcl0: command not found +par_bash_env_parallel_session script: line XXX: funcl0: command not found par_bash_env_parallel_session no_before par_bash_env_parallel_session no_before par_bash_env_parallel_session no_before @@ -2284,13 +2127,13 @@ par_ash_underscore variables in aliases work par_ash_underscore variables in aliases work par_ash_underscore variables in aliases work par_ash_underscore variables in aliases work -par_ash_underscore /bin/ash: 3: not_copied_alias: not found +par_ash_underscore script: 4: not_copied_alias: not found par_ash_underscore error=OK par_ash_underscore aliases work par_ash_underscore aliases work par_ash_underscore /bin/ash: 1: myecho: not found par_ash_underscore OK if no myecho ^^^^^^^^^^^^^^^^^ -par_ash_underscore /bin/ash: 1: myecho: not found +par_ash_underscore script: 2: myecho: not found par_ash_underscore OK if no myecho ^^^^^^^^^^^^^^^^^ par_ash_parset parset par_ash_parset ### parset into vars with comma @@ -2371,27 +2214,9 @@ par_ash_environment_too_big OK_bigfunc_remote par_ash_environment_too_big OK_bigfunc_quote par_ash_environment_too_big OK_bigfunc_quote_remote par_ash_environment_too_big Rest should fail - functions not supported in ash -par_ash_environment_too_big ash: XXX: perl: Argument list too long -par_ash_environment_too_big env_parallel: Error: Your environment is too big. -par_ash_environment_too_big env_parallel: Error: You can try 3 different approaches: -par_ash_environment_too_big env_parallel: Error: 1. Run 'env_parallel --session' before you set -par_ash_environment_too_big env_parallel: Error: variables or define functions. -par_ash_environment_too_big env_parallel: Error: 2. Use --env and only mention the names to copy. -par_ash_environment_too_big env_parallel: Error: 3. Try running this in a clean environment once: -par_ash_environment_too_big env_parallel: Error: env_parallel --record-env -par_ash_environment_too_big env_parallel: Error: And then use '--env _' -par_ash_environment_too_big env_parallel: Error: For details see: man env_parallel +par_ash_environment_too_big parallel: Error: Command line too long (XXX >= XXX) at input 0: fail_bigvar par_ash_environment_too_big parallel: Error: Command line too long (XXX >= XXX) at input 0: fail_bigvar_remote -par_ash_environment_too_big ash: XXX: perl: Argument list too long -par_ash_environment_too_big env_parallel: Error: Your environment is too big. -par_ash_environment_too_big env_parallel: Error: You can try 3 different approaches: -par_ash_environment_too_big env_parallel: Error: 1. Run 'env_parallel --session' before you set -par_ash_environment_too_big env_parallel: Error: variables or define functions. -par_ash_environment_too_big env_parallel: Error: 2. Use --env and only mention the names to copy. -par_ash_environment_too_big env_parallel: Error: 3. Try running this in a clean environment once: -par_ash_environment_too_big env_parallel: Error: env_parallel --record-env -par_ash_environment_too_big env_parallel: Error: And then use '--env _' -par_ash_environment_too_big env_parallel: Error: For details see: man env_parallel +par_ash_environment_too_big parallel: Error: Command line too long (XXX >= XXX) at input 0: fail_bigvar_quote par_ash_environment_too_big parallel: Error: Command line too long (XXX >= XXX) at input 0: fail_bigvar_quote_remote par_ash_environment_too_big fail_bigfunc-not-supported par_ash_environment_too_big fail_bigfunc_remote-not-supported @@ -2400,67 +2225,67 @@ par_ash_environment_too_big fail_bigfunc_quote_remote-not-supported par_ash_env_parallel_session ### Test env_parallel --session par_ash_env_parallel_session ### level0 should be hidden, level1 should be transferred par_ash_env_parallel_session -par_ash_env_parallel_session /bin/ash: XXX: level0func: not found -par_ash_env_parallel_session /bin/ash: XXX: level0alias: not found -par_ash_env_parallel_session /bin/ash: XXX: Bad substitution +par_ash_env_parallel_session script: 33: level0func: not found +par_ash_env_parallel_session script: 33: level0alias: not found +par_ash_env_parallel_session script: 33: Bad substitution par_ash_env_parallel_session par_ash_env_parallel_session /bin/ash: XXX: level0func: not found par_ash_env_parallel_session /bin/ash: XXX: level0alias: not found par_ash_env_parallel_session /bin/ash: XXX: Bad substitution par_ash_env_parallel_session l1var par_ash_env_parallel_session l1alias -par_ash_env_parallel_session /bin/ash: XXX: level1func: not found -par_ash_env_parallel_session /bin/ash: XXX: Bad substitution +par_ash_env_parallel_session script: 33: level1func: not found +par_ash_env_parallel_session script: 33: Bad substitution par_ash_env_parallel_session l1var par_ash_env_parallel_session l1alias par_ash_env_parallel_session /bin/ash: XXX: level1func: not found par_ash_env_parallel_session /bin/ash: XXX: Bad substitution par_ash_env_parallel_session ### level0+1 should be hidden, level2 should be transferred par_ash_env_parallel_session -par_ash_env_parallel_session /bin/ash: 3: level0func: not found -par_ash_env_parallel_session /bin/ash: 3: level0alias: not found -par_ash_env_parallel_session /bin/ash: 3: Bad substitution +par_ash_env_parallel_session script: 4: level0func: not found +par_ash_env_parallel_session script: 4: level0alias: not found +par_ash_env_parallel_session script: 4: Bad substitution par_ash_env_parallel_session par_ash_env_parallel_session /bin/ash: 3: level0func: not found par_ash_env_parallel_session /bin/ash: 3: level0alias: not found par_ash_env_parallel_session /bin/ash: 3: Bad substitution par_ash_env_parallel_session -par_ash_env_parallel_session /bin/ash: 3: level1func: not found -par_ash_env_parallel_session /bin/ash: 3: level1alias: not found -par_ash_env_parallel_session /bin/ash: 3: Bad substitution +par_ash_env_parallel_session script: 4: level1func: not found +par_ash_env_parallel_session script: 4: level1alias: not found +par_ash_env_parallel_session script: 4: Bad substitution par_ash_env_parallel_session par_ash_env_parallel_session /bin/ash: 3: level1func: not found par_ash_env_parallel_session /bin/ash: 3: level1alias: not found par_ash_env_parallel_session /bin/ash: 3: Bad substitution par_ash_env_parallel_session l2var par_ash_env_parallel_session l2alias -par_ash_env_parallel_session /bin/ash: 3: level2func: not found -par_ash_env_parallel_session /bin/ash: 3: Bad substitution +par_ash_env_parallel_session script: 4: level2func: not found +par_ash_env_parallel_session script: 4: Bad substitution par_ash_env_parallel_session l2var par_ash_env_parallel_session l2alias par_ash_env_parallel_session /bin/ash: 3: level2func: not found par_ash_env_parallel_session /bin/ash: 3: Bad substitution par_ash_env_parallel_session ### level0 should be hidden, level1+2 should be transferred par_ash_env_parallel_session -par_ash_env_parallel_session /bin/ash: XXX: level0func: not found -par_ash_env_parallel_session /bin/ash: XXX: level0alias: not found -par_ash_env_parallel_session /bin/ash: XXX: Bad substitution +par_ash_env_parallel_session script: 35: level0func: not found +par_ash_env_parallel_session script: 35: level0alias: not found +par_ash_env_parallel_session script: 35: Bad substitution par_ash_env_parallel_session par_ash_env_parallel_session /bin/ash: XXX: level0func: not found par_ash_env_parallel_session /bin/ash: XXX: level0alias: not found par_ash_env_parallel_session /bin/ash: XXX: Bad substitution par_ash_env_parallel_session l1var par_ash_env_parallel_session l1alias -par_ash_env_parallel_session /bin/ash: XXX: level1func: not found -par_ash_env_parallel_session /bin/ash: XXX: Bad substitution +par_ash_env_parallel_session script: 35: level1func: not found +par_ash_env_parallel_session script: 35: Bad substitution par_ash_env_parallel_session l1var par_ash_env_parallel_session l1alias par_ash_env_parallel_session /bin/ash: XXX: level1func: not found par_ash_env_parallel_session /bin/ash: XXX: Bad substitution par_ash_env_parallel_session l2var par_ash_env_parallel_session l2alias -par_ash_env_parallel_session /bin/ash: XXX: level2func: not found -par_ash_env_parallel_session /bin/ash: XXX: Bad substitution +par_ash_env_parallel_session script: 35: level2func: not found +par_ash_env_parallel_session script: 35: Bad substitution par_ash_env_parallel_session l2var par_ash_env_parallel_session l2alias par_ash_env_parallel_session /bin/ash: XXX: level2func: not found @@ -2468,30 +2293,30 @@ par_ash_env_parallel_session /bin/ash: XXX: Bad substitution par_ash_env_parallel_session ### level0+1+2 should be transferred par_ash_env_parallel_session l0var par_ash_env_parallel_session l0alias -par_ash_env_parallel_session /bin/ash: XXX: level0func: not found -par_ash_env_parallel_session /bin/ash: XXX: Bad substitution +par_ash_env_parallel_session script: 32: level0func: not found +par_ash_env_parallel_session script: 32: Bad substitution par_ash_env_parallel_session l0var par_ash_env_parallel_session l0alias par_ash_env_parallel_session /bin/ash: XXX: level0func: not found par_ash_env_parallel_session /bin/ash: XXX: Bad substitution par_ash_env_parallel_session l1var par_ash_env_parallel_session l1alias -par_ash_env_parallel_session /bin/ash: XXX: level1func: not found -par_ash_env_parallel_session /bin/ash: XXX: Bad substitution +par_ash_env_parallel_session script: 32: level1func: not found +par_ash_env_parallel_session script: 32: Bad substitution par_ash_env_parallel_session l1var par_ash_env_parallel_session l1alias par_ash_env_parallel_session /bin/ash: XXX: level1func: not found par_ash_env_parallel_session /bin/ash: XXX: Bad substitution par_ash_env_parallel_session l2var par_ash_env_parallel_session l2alias -par_ash_env_parallel_session /bin/ash: XXX: level2func: not found -par_ash_env_parallel_session /bin/ash: XXX: Bad substitution +par_ash_env_parallel_session script: 32: level2func: not found +par_ash_env_parallel_session script: 32: Bad substitution par_ash_env_parallel_session l2var par_ash_env_parallel_session l2alias par_ash_env_parallel_session /bin/ash: XXX: level2func: not found par_ash_env_parallel_session /bin/ash: XXX: Bad substitution par_ash_env_parallel_session /bin/ash: 1: aliasbefore: not found -par_ash_env_parallel_session /bin/ash: 1: aliasbefore: not found +par_ash_env_parallel_session script: 2: aliasbefore: not found par_ash_env_parallel_session no_before par_ash_env_parallel_session no_before par_ash_env_parallel_session after aliasafter_OK diff --git a/testsuite/wanted-results/parallel-local13 b/testsuite/wanted-results/parallel-local13 index db90b1c8..bbd351a0 100644 --- a/testsuite/wanted-results/parallel-local13 +++ b/testsuite/wanted-results/parallel-local13 @@ -456,6 +456,7 @@ echo '### true < 32767-ys.xi' ### true < 32767-ys.xi stdout xargs true < 32767-ys.xi stdout parallel -k true < 32767-ys.xi +parallel: Error: Command line too long (65541 >= 64031) at input 0: y y y y y y y y y y y y y y y y y y y y y y y y y ... echo '### true < 16383-ys.xi' ### true < 16383-ys.xi stdout xargs true < 16383-ys.xi diff --git a/testsuite/wanted-results/parallel-local22 b/testsuite/wanted-results/parallel-local22 index df6cd711..db401b7a 100644 --- a/testsuite/wanted-results/parallel-local22 +++ b/testsuite/wanted-results/parallel-local22 @@ -1,16 +1,16 @@ 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 -51736abdee4738369ce04b354d40c887 - -Chars per line: 116300 - 6 119994 697800 +2f0d9d11a071f5dbe6bd876a19499ff5 - +Chars per line: 63437 + 11 119989 697810 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 -88ab30e1d8b7459fddf88986ff282950 - -Chars per line: 116826 - 7 60000 817788 +42d5c115907de0044ef988a0639204cd - +Chars per line: 62906 + 13 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 -e606ff4068f4b48582d3305d39f93caf - +0896c693a7d42440f31c13c803d27df2 - echo '### This causes problems if we kill child processes'; # 2>/dev/null to avoid parallel: Warning: Starting 45 processes took > 2 sec. ### This causes problems if we kill child processes seq 2 40 | parallel -j 0 seq 1 10 2>/dev/null | sort | md5sum diff --git a/testsuite/wanted-results/parallel-local23 b/testsuite/wanted-results/parallel-local23 index 76de63f1..55bc1dda 100644 --- a/testsuite/wanted-results/parallel-local23 +++ b/testsuite/wanted-results/parallel-local23 @@ -59,8 +59,9 @@ please cite as described in 'parallel --citation'. echo '### bug #39787: --xargs broken' ### bug #39787: --xargs broken nice perl -e 'for(1..30000){print "$_\n"}' | $NICEPAR --xargs -k echo | perl -ne 'print length $_,"\n"' -131058 -37836 +64026 +64026 +40842 echo '### --delay should grow by 3 sec per arg' ### --delay should grow by 3 sec per arg stdout /usr/bin/time -f %e parallel --delay 3 true ::: 1 2 | perl -ne '$_ >= 3 and $_ <= 8 and print "OK\n"' diff --git a/testsuite/wanted-results/parallel-local7 b/testsuite/wanted-results/parallel-local7 index 91327d5e..9d791742 100644 --- a/testsuite/wanted-results/parallel-local7 +++ b/testsuite/wanted-results/parallel-local7 @@ -29,35 +29,35 @@ parallel: Error: Command line too long (4049 >= 4047) at input 0: 4038 echo '### tmux-1.8' ### tmux-1.8 seq 1 5 100 | PARALLEL_TMUX=tmux-1.8 par_tmux -See output with: tmux-1.8 -S /tmp/parallel-local7-tmpdir/tmsXXXXX attach -0 +parallel: Error: Command line too long (9 >= -1264) at input 0: 1 +255 seq 101 5 200 | PARALLEL_TMUX=tmux-1.8 par_tmux -See output with: tmux-1.8 -S /tmp/parallel-local7-tmpdir/tmsXXXXX attach -0 +parallel: Error: Command line too long (111 >= -1264) at input 0: 101 +255 seq 201 5 300 | PARALLEL_TMUX=tmux-1.8 par_tmux -See output with: tmux-1.8 -S /tmp/parallel-local7-tmpdir/tmsXXXXX attach -0 +parallel: Error: Command line too long (211 >= -1264) at input 0: 201 +255 seq 301 5 400 | PARALLEL_TMUX=tmux-1.8 par_tmux -See output with: tmux-1.8 -S /tmp/parallel-local7-tmpdir/tmsXXXXX attach -0 +parallel: Error: Command line too long (311 >= -1264) at input 0: 301 +255 seq 401 5 460 | PARALLEL_TMUX=tmux-1.8 par_tmux -See output with: tmux-1.8 -S /tmp/parallel-local7-tmpdir/tmsXXXXX attach -0 +parallel: Error: Command line too long (411 >= -1264) at input 0: 401 +255 echo '### tmux-1.8 fails' ### tmux-1.8 fails echo 462 | PARALLEL_TMUX=tmux-1.8 par_tmux -parallel: Error: Command line too long (472 >= 472) at input 0: 462 +parallel: Error: Command line too long (472 >= -1264) at input 0: 462 255 echo 463 | PARALLEL_TMUX=tmux-1.8 par_tmux -parallel: Error: Command line too long (473 >= 472) at input 0: 463 +parallel: Error: Command line too long (473 >= -1264) at input 0: 463 255 echo 464 | PARALLEL_TMUX=tmux-1.8 par_tmux -parallel: Error: Command line too long (474 >= 472) at input 0: 464 +parallel: Error: Command line too long (474 >= -1264) at input 0: 464 255 echo '### tmux-1.8 0..255 ascii' ### tmux-1.8 0..255 ascii perl -e 'print map { ($_, map { pack("c*",$_) } grep { $_>=1 && $_!=10 } $_-110..$_),"\n" } 0..255' | PARALLEL_TMUX=tmux-1.8 stdout parallel --tmux --timeout 5 echo | par_tmux_filter; echo $? -See output with: tmux-1.8 -S /tmp/parallel-local7-tmpdir/tmsXXXXX attach +parallel: Error: Command line too long (6 >= -1264) at input 0: 0 0 echo '### tmux-1.9 0..255 ascii' ### tmux-1.9 0..255 ascii @@ -72,10 +72,10 @@ See output with: tmux -S /tmp/parallel-local7-tmpdir/tmsXXXXX attach echo '### Test critical lengths. Must not block' ### Test critical lengths. Must not block seq 140 260 | PARALLEL_TMUX=tmux-1.8 stdout parallel --tmux echo '{}{=$_="&"x$_=}' | par_tmux_filter -See output with: tmux-1.8 -S /tmp/parallel-local7-tmpdir/tmsXXXXX attach +parallel: Error: Command line too long (150 >= -1264) at input 0: 140 seq 140 260 | PARALLEL_TMUX=tmux-1.9 stdout parallel --tmux echo '{}{=$_="&"x$_=}' | par_tmux_filter See output with: tmux-1.9 -S /tmp/parallel-local7-tmpdir/tmsXXXXX attach seq 560 850 | PARALLEL_TMUX=tmux-1.8 stdout parallel --tmux echo '{}{=$_="a"x$_=}' | par_tmux_filter -parallel: Error: Command line too long (568 >= 472) at input 0: 560 +parallel: Error: Command line too long (568 >= -1264) at input 0: 560 seq 560 850 | PARALLEL_TMUX=tmux-1.9 stdout parallel --tmux echo '{}{=$_="a"x$_=}' | par_tmux_filter See output with: tmux-1.9 -S /tmp/parallel-local7-tmpdir/tmsXXXXX attach diff --git a/testsuite/wanted-results/parallel-local9 b/testsuite/wanted-results/parallel-local9 index 13ba8568..536cf604 100644 --- a/testsuite/wanted-results/parallel-local9 +++ b/testsuite/wanted-results/parallel-local9 @@ -343,7 +343,7 @@ a1b1^c1[.}c echo "### BUG: The length for -X is not close to max (131072)" ### BUG: The length for -X is not close to max (131072) seq 1 4000 | nice parallel -k -X echo {.} aa {}{.} {}{}d{} {}dd{}d{.} |head -n 1 |wc - 1 12817 131016 + 1 6725 64004 echo '### Test -N' ### Test -N seq 1 5 | $NICEPAR -kN3 echo {1} {2} {3} diff --git a/testsuite/wanted-results/parallel-macos b/testsuite/wanted-results/parallel-macos dissimilarity index 100% index 5c8a0d1b..54363351 100644 --- a/testsuite/wanted-results/parallel-macos +++ b/testsuite/wanted-results/parallel-macos @@ -1,17 +1,100 @@ -par_big_func 1 7968 191232 -par_big_func 1 5368 128772 -par_big_func_name 1 4960 119040 -par_big_func_name 1 40 960 -par_big_var_func_name 1 4956 118944 -par_big_var_func_name 1 4956 118944 -par_big_var_func_name 1 3424 82116 -par_many_args 1 16400 32800 -par_many_args 1 3600 7200 -par_many_func 1 4372 104928 -par_many_func 1 2296 55076 -par_many_var 1 5124 122976 -par_many_var 1 1544 37028 -par_many_var_big_func 1 4404 105696 -par_many_var_big_func 1 2264 54308 -par_many_var_func 1 6624 158976 -par_many_var_func 1 44 1028 +par_big_func 1 3824 91776 +par_big_func 1 3824 91776 +par_big_func 1 3824 91776 +par_big_func 1 1864 44676 +par_big_func_name 1 820 19680 +par_big_func_name 1 820 19680 +par_big_func_name 1 820 19680 +par_big_func_name 1 820 19680 +par_big_func_name 1 820 19680 +par_big_func_name 1 820 19680 +par_big_func_name 1 80 1920 +par_big_var_func_name 1 816 19584 +par_big_var_func_name 1 816 19584 +par_big_var_func_name 1 816 19584 +par_big_var_func_name 1 816 19584 +par_big_var_func_name 1 816 19584 +par_big_var_func_name 1 816 19584 +par_big_var_func_name 1 816 19584 +par_big_var_func_name 1 816 19584 +par_big_var_func_name 1 816 19584 +par_big_var_func_name 1 816 19584 +par_big_var_func_name 1 816 19584 +par_big_var_func_name 1 816 19584 +par_big_var_func_name 1 816 19584 +par_big_var_func_name 1 816 19584 +par_big_var_func_name 1 816 19584 +par_big_var_func_name 1 816 19584 +par_big_var_func_name 1 280 6660 +par_many_args 1 3148 6296 +par_many_args 1 3148 6296 +par_many_args 1 3148 6296 +par_many_args 1 3148 6296 +par_many_args 1 3148 6296 +par_many_args 1 3148 6296 +par_many_args 1 1112 2224 +par_many_func 1 232 5568 +par_many_func 1 232 5568 +par_many_func 1 232 5568 +par_many_func 1 232 5568 +par_many_func 1 232 5568 +par_many_func 1 232 5568 +par_many_func 1 232 5568 +par_many_func 1 232 5568 +par_many_func 1 232 5568 +par_many_func 1 232 5568 +par_many_func 1 232 5568 +par_many_func 1 232 5568 +par_many_func 1 232 5568 +par_many_func 1 232 5568 +par_many_func 1 232 5568 +par_many_func 1 232 5568 +par_many_func 1 232 5568 +par_many_func 1 232 5568 +par_many_func 1 232 5568 +par_many_func 1 232 5568 +par_many_func 1 232 5568 +par_many_func 1 232 5568 +par_many_func 1 232 5568 +par_many_func 1 232 5568 +par_many_func 1 232 5568 +par_many_func 1 232 5568 +par_many_func 1 232 5568 +par_many_func 1 232 5568 +par_many_func 1 172 4100 +par_many_var 1 984 23616 +par_many_var 1 984 23616 +par_many_var 1 984 23616 +par_many_var 1 984 23616 +par_many_var 1 984 23616 +par_many_var 1 984 23616 +par_many_var 1 764 18308 +par_many_var_big_func 1 264 6336 +par_many_var_big_func 1 264 6336 +par_many_var_big_func 1 264 6336 +par_many_var_big_func 1 264 6336 +par_many_var_big_func 1 264 6336 +par_many_var_big_func 1 264 6336 +par_many_var_big_func 1 264 6336 +par_many_var_big_func 1 264 6336 +par_many_var_big_func 1 264 6336 +par_many_var_big_func 1 264 6336 +par_many_var_big_func 1 264 6336 +par_many_var_big_func 1 264 6336 +par_many_var_big_func 1 264 6336 +par_many_var_big_func 1 264 6336 +par_many_var_big_func 1 264 6336 +par_many_var_big_func 1 264 6336 +par_many_var_big_func 1 264 6336 +par_many_var_big_func 1 264 6336 +par_many_var_big_func 1 264 6336 +par_many_var_big_func 1 264 6336 +par_many_var_big_func 1 264 6336 +par_many_var_big_func 1 264 6336 +par_many_var_big_func 1 264 6336 +par_many_var_big_func 1 264 6336 +par_many_var_big_func 1 264 6336 +par_many_var_big_func 1 68 1604 +par_many_var_func 1 2484 59616 +par_many_var_func 1 2484 59616 +par_many_var_func 1 1700 40772 diff --git a/testsuite/wanted-results/parallel-tutorial b/testsuite/wanted-results/parallel-tutorial index 8e2c8609..d59f9632 100644 --- a/testsuite/wanted-results/parallel-tutorial +++ b/testsuite/wanted-results/parallel-tutorial @@ -150,7 +150,7 @@ num30000 num8 tsv-file.tsv foo -~/privat/parallel/testsuite/tmp +~ my_func() { echo in my_func $1 } @@ -701,7 +701,6 @@ foo parallel --workdir . -S $SERVER1 pwd ::: "" parallel --workdir ... -S $SERVER1 pwd ::: "" /home/parallel -/home/parallel/privat/parallel/testsuite/tmp /home/parallel/.TMPWORKDIR parallel -S $SERVER1 --sshdelay 0.2 echo ::: 1 2 3 9 @@ -779,6 +778,7 @@ BASH_FUNC_run_once%% BASH_FUNC_run_test%% _ mysqlrootpass +oracle_password withpassword # The function is only copied if using Bash my_func2() { @@ -788,7 +788,7 @@ withpassword VAR=foo export VAR parallel --env _ -S $SERVER1 'echo $VAR; my_func2' ::: bar -/bin/bash: my_func2: command not found +script: my_func2: command not found NOT='not exported var' alias myecho=echo not_ex() { @@ -847,7 +847,7 @@ For details: see man env_parallel 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 -e'ssh -l parallel' ./abc-file lo:./.TMPWORKDIR;ssh -l parallel lo -- exec perl -e "'"'@GNU_Parallel=split/_/,"use_IPC::Open3;_use_MIME::Base64";eval"@GNU_Parallel";$chld=$SIG{CHLD};$SIG{CHLD}="IGNORE";my$zip=(grep{-x$_}"/usr/local/bin/bzip2")[0]||"bzip2";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;$SIG{CHLD}=$chld;eval$eval;'"'" BASE64;_EXIT_status=$?; mkdir -p ./. && rsync --protocol 30 --rsync-path='cd ./.TMPWORKDIR/./.; rsync' -rlDzR -e'ssh -l parallel' lo:./abc-file.out ./.;ssh -l parallel lo -- 'sh -c '"'"'rm -f ./.TMPWORKDIR/abc-file 2>/dev/null;rmdir ./.TMPWORKDIR/ ./.parallel/tmp/ ./.parallel/ 2>/dev/null;rm -rf ./.TMPWORKDIR;'"'";ssh -l parallel lo -- 'sh -c '"'"'rm -f ./.TMPWORKDIR/abc-file.out 2>/dev/null;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 -e'ssh -l parallel' ./abc-file lo:./.TMPWORKDIR;ssh -l parallel lo -- exec perl -X -e GNU_Parallel,eval+pack+q/H10000000/,join+q//,@ARGV BASE64;_EXIT_status=$?; mkdir -p ./. && rsync --protocol 30 --rsync-path='cd ./.TMPWORKDIR/./.; rsync' -rlDzR -e'ssh -l parallel' lo:./abc-file.out ./.;ssh -l parallel lo -- 'sh -c '"'"'rm -f ./.TMPWORKDIR/abc-file 2>/dev/null;rmdir ./.TMPWORKDIR/ ./.parallel/tmp/ ./.parallel/ 2>/dev/null;rm -rf ./.TMPWORKDIR;'"'";ssh -l parallel lo -- 'sh -c '"'"'rm -f ./.TMPWORKDIR/abc-file.out 2>/dev/null;rmdir ./.TMPWORKDIR/ ./.parallel/tmp/ ./.parallel/ 2>/dev/null;rm -rf ./.TMPWORKDIR;'"'";ssh -l parallel lo -- rm -rf .TMPWORKDIR;exit $_EXIT_status; parset myvar1,myvar2 echo ::: a b echo $myvar1 echo $myvar2 diff --git a/testsuite/wanted-results/test19 b/testsuite/wanted-results/test19 index b4cda840..27ef8c64 100644 --- a/testsuite/wanted-results/test19 +++ b/testsuite/wanted-results/test19 @@ -77,7 +77,7 @@ OK Input for ssh -l vagrant one-server -- mkdir -p ./. -l vagrant one-server rsync --server -lDrRze.iLsfxC . ./. --l vagrant one-server -- exec perl -e '@GNU_Parallel=split/_/,"use_IPC::Open3;_use_MIME::Base64";eval"@GNU_Parallel";$chld=$SIG{CHLD};$SIG{CHLD}="IGNORE";my$zip=(grep{-x$_}"/usr/local/bin/bzip2")[0]||"bzip2";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;$SIG{CHLD}=$chld;eval$eval;' base64 +-l vagrant one-server -- exec perl -X -e GNU_Parallel,eval+pack+q/H10000000/,join+q//,@ARGV hex -l vagrant one-server cd ././tmp; rsync --server --sender -lDrRze.iLsfxC . './parallel.file. newlineX.out' -l vagrant one-server cd ././tmp; rsync --server --sender -lDrRze.iLsfxC . './parallel.file. @@ -90,7 +90,7 @@ newlineX.out'"'"' 2>/dev/null;rmdir ./tmp/ ./ 2>/dev/null;' newlineX.out2'"'"' 2>/dev/null;rmdir ./tmp/ ./ 2>/dev/null;' -l vagrant one-server -- mkdir -p ./. -l vagrant one-server rsync --server -lDrRze.iLsfxC . ./. --l vagrant one-server -- exec perl -e '@GNU_Parallel=split/_/,"use_IPC::Open3;_use_MIME::Base64";eval"@GNU_Parallel";$chld=$SIG{CHLD};$SIG{CHLD}="IGNORE";my$zip=(grep{-x$_}"/usr/local/bin/bzip2")[0]||"bzip2";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;$SIG{CHLD}=$chld;eval$eval;' base64 +-l vagrant one-server -- exec perl -X -e GNU_Parallel,eval+pack+q/H10000000/,join+q//,@ARGV hex -l vagrant one-server cd ././tmp; rsync --server --sender -lDrRze.iLsfxC . './parallel.file. newlineX.out' -l vagrant one-server cd ././tmp; rsync --server --sender -lDrRze.iLsfxC . './parallel.file. -- 2.11.4.GIT