parallel: --shellquote can be given multiple times.

This commit is contained in:
Ole Tange 2019-01-29 06:58:12 +01:00
parent 2259251575
commit 0615d0340b
22 changed files with 1503 additions and 801 deletions

211
doc/haikus Normal file
View file

@ -0,0 +1,211 @@
Quote of the month:
It's really powerful for smallish data processing scripts
-- João Veiga @jcsvveiga@twitter
It's the MapReduce of our generation!
-- Mathias Meyer @roidrage@twitter
GNU parallel is a seriously powerful flexible and tool.
-- Greg Hurrell @wincent
[socat is] top3 on my "crazy and powerful" list (the other two being
gnu parallel and emacs).
-- Peter Kjellström @nsccap@twitter
GNU/Parallel umm... tempting.
-- k-leb k @dcatdemon@twitter
Ain't that a dirty hack ;-)
-- ./hans
Not sure if it counts as an "alt" tool but GNU parallel really took my shell scripting game to the next level.
-- @alinajaf@twitter
=== Used ===
Ok! GNU Parallel is one of the best things out there. Almost as good as vanilla ice cream.
-- @coffe@mastodon.art
HOLY STUFF I LOVE GNU PARALLEL
-- Nick (but spookier) @NickInfoSec@twitter
What this country needs is a president with a strong understanding of GNU Parallel, Awk, Sed, Grep, and Diff
-- Gregg Housh @GreggHoush
I know I'm late to the party but GNU Parallel is truly amazing!
-- Sam Diaz-Munoz @sociovirology
GNU parallel is a thing of magic.
-- Josh Meyer @joshmeyerphd@twitter
I've been using GNU Parallel very much and effectively lately.
Such an easy way to get huge speed-ups with my simple bash/Perl/Python
programs -- parallelize them!
-- Ken Youens-Clark @kycl4rk@twitter
Alias and vars
export them more easily
With env_parallel
-- Ole Tange
You know what?
GNU Parallel is cool.
Concurrency, but in the Unix-philosophy style,
without the Enterprise wankeriness.
-- NickM bokkiedog@twitter
An ode to GNU parallel
An ode to GNU parallel
An ode to GNU parallel
An ode to GNU parallel
An ode to GNU parallel
An ode to GNU parallel
-- Adam Stuckert PoisonEcology@twitter
--limit can
limit jobs dynamic'ly
given a command
--ole-tange
--line-buffer
touches files on disk no more
faster than before
-- Ole Tange
Always test your script
using a --dry-run
or --dr
-- Ole Tange
--rpl
used to be a static string
Now it can take args
--ole-tange
--tee will pipe
all data to all the jobs
used with --pipe
--ole-tange
Speed is good for you
Multi speed is better still
Use GNU Parallel
-- Ole Tange
Want to monitor
many job outputs at once:
--tmuxpane
--ole-tange
Pipes are fast and good.
Use them in your programs, too.
Use GNU Parallel
-- Ole Tange
Programs using net
only spare capacity
niceload dash dash net
-- Ole Tange
xapply too strict?
:::+
is just made for you
-- Ole Tange
Save environment
Functions, vars and other stuff
Try env_parallel
-- Ole Tange
Many jobs to sort.
SQL would help a lot.
Dash dash sql
-- Ole Tange
Dash dash pipe too slow?
Dash dash pipepart is your friend.
Use GNU Parallel
-- Ole Tange
|||||
|||||||
Use GNU Parallel
-- Malcolm Cook
UNIX pipe too tight?
You should then learn dash dash pipe.
Use GNU Parallel
-- Ole Tange
In parallel land
everything is quick and fast
Use GNU Parallel.
-- Ole Tange
Jobs in parallel
faster run than single jobs
Use GNU Parallel.
-- Ole Tange
Multi core I see.
Doing nothing. I say no!
Use GNU Parallel.
-- Ole Tange
Programs very slow.
Multiple can run at once.
Use GNU Parallel.
-- Ole Tange
Many jobs to run.
Idle cores is not your thing.
Use GNU Parallel.
-- Ole Tange
SSH set up?
Instant cluster needed now?
Use GNU Parallel.
-- Ole Tange
xargs' space and quote
headache causing behaviour.
Use GNU Parallel
-- Ole Tange
If not enough time:
Run jobs using Parallel.
Keeps CPUs warm.
-- Ole Tange
Hadoop bit too much?
Want a simpler syntax now?
Use GNU Parallel.
-- Ole Tange
Shellshock pain hits us.
Dash dash env is affected.
Upgrade Parallel.
-- Ole Tange
goodbye to xargs
quoting is still a black art
welcome parallel
-- Malcolm Cook
bash for loops vanquished
jobs fan out over network
collated results!
-- Malcolm Cook
code fork headache blues?
option P is your new friend
`man parallel` now!
-- Malcolm Cook
Are you tired of
inflexible replacements?
Use Perl expressions.
-- Ole Tange

View file

@ -207,25 +207,27 @@ from:tange@gnu.org
to:parallel@gnu.org, bug-parallel@gnu.org to:parallel@gnu.org, bug-parallel@gnu.org
stable-bcc: Jesse Alama <jessealama@fastmail.fm> stable-bcc: Jesse Alama <jessealama@fastmail.fm>
Subject: GNU Parallel 20190122 ('Shutdown/Indonesia=Tanjung Lesung=Sunda') released <<[stable]>> Subject: GNU Parallel 20190222 ('') released <<[stable]>>
GNU Parallel 20190122 ('') <<[stable]>> has been released. It is available for download at: http://ftpmirror.gnu.org/parallel/ GNU Parallel 20190222 ('') <<[stable]>> has been released. It is available for download at: http://ftpmirror.gnu.org/parallel/
<<No new functionality was introduced so this is a good candidate for a stable release.>> <<No new functionality was introduced so this is a good candidate for a stable release.>>
Quote of the month: Quote of the month:
Ok! GNU Parallel is one of the best things out there. Almost as good as vanilla ice cream. <<>>
-- @coffe@mastodon.art
New in this release: New in this release:
* 'env_parallel --end-session' makes it possible to nest 'env_parallel --session' * blog.cogneurostats.com/?p=148
* Using GNU Parallel in pentesting https://youtu.be/mZ0OUJmkIlA?t=873 https://www.neurotrivial.com/2019/01/24/freesurfer-recon-all/
https://pigrecoinfinito.wordpress.com/2018/12/22/come-ridimensionare-10k-foto-con-la-riga-di-comando/
https://codeday.me/bug/20190122/552902.html
https://www.kwbtblog.com/entry/2019/01/12/020423
* Supercomputer Workshop: Feb 1&7 http://www.ece.unm.edu/featured-students/supercomputer-workshop-feb-17.html * https://www.youtube.com/watch?v=XHN2tm3tNaw
* Bug fixes and man page updates. * Bug fixes and man page updates.

View file

@ -899,7 +899,7 @@ sub options_hash() {
"use-cores-instead-of-threads" "use-cores-instead-of-threads"
=> \$opt::use_cores_instead_of_threads, => \$opt::use_cores_instead_of_threads,
"use-cpus-instead-of-cores" => \$opt::use_cpus_instead_of_cores, "use-cpus-instead-of-cores" => \$opt::use_cpus_instead_of_cores,
"shellquote|shell_quote|shell-quote" => \$opt::shellquote, "shellquote|shell_quote|shell-quote" => \@opt::shellquote,
"nice=i" => \$opt::nice, "nice=i" => \$opt::nice,
"tag" => \$opt::tag, "tag" => \$opt::tag,
"tagstring|tag-string=s" => \$opt::tagstring, "tagstring|tag-string=s" => \$opt::tagstring,
@ -4871,7 +4871,7 @@ sub which(@) {
# csh and tcsh disguise themselves as -sh/-csh # csh and tcsh disguise themselves as -sh/-csh
# E.g.: ssh -tt csh@lo 'ps aux;true' |egrep ^csh # E.g.: ssh -tt csh@lo 'ps aux;true' |egrep ^csh
# but sh also disguise itself as -sh # but sh also disguise itself as -sh
# (When?) # (TODO When does that happen?)
"-sh" => ["sh"], "-sh" => ["sh"],
"-csh" => ["tcsh", "csh"], "-csh" => ["tcsh", "csh"],
# ash disguises itself as -ash # ash disguises itself as -ash
@ -4880,7 +4880,7 @@ sub which(@) {
"-dash" => ["dash", "ash", "sh"], "-dash" => ["dash", "ash", "sh"],
# bash disguises itself as -bash # bash disguises itself as -bash
"-bash" => ["bash", "sh"], "-bash" => ["bash", "sh"],
# ksh disguises itself as -ash # ksh disguises itself as -ksh
"-ksh" => ["ksh", "sh"], "-ksh" => ["ksh", "sh"],
# zsh disguises itself as -zsh # zsh disguises itself as -zsh
"-zsh" => ["zsh", "sh"], "-zsh" => ["zsh", "sh"],
@ -7864,7 +7864,7 @@ sub wrapped($) {
# * --nice/--cat/--fifo should be done on the remote machine # * --nice/--cat/--fifo should be done on the remote machine
# * --pipepart/--pipe should be done on the local machine inside --tmux # * --pipepart/--pipe should be done on the local machine inside --tmux
# Uses: # Uses:
# $opt::shellquote # @opt::shellquote
# $opt::nice # $opt::nice
# $Global::shell # $Global::shell
# $opt::cat # $opt::cat
@ -7881,11 +7881,16 @@ sub wrapped($) {
# This will force them to run correctly, but will fail in # This will force them to run correctly, but will fail in
# tcsh so we do not do it. # tcsh so we do not do it.
# $command .= "\n\n"; # $command .= "\n\n";
if($opt::shellquote) { if(@opt::shellquote) {
# Prepend /bin/echo (echo no-/bin is wrong in csh) # Quote one time for each --shellquote
# and quote twice my $c = $command;
$command = "/bin/echo " . for(@opt::shellquote) {
::Q(::Q($command)); $c = ::Q($c);
}
# Prepend "echo" (it is written in perl because
# quoting '-e' causes problem in some versions and
# csh's version does something wrong)
$command = q(perl -e '$,=" "; print "@ARGV\n";' -- ) . ::Q($c);
} }
if($Global::parallel_env) { if($Global::parallel_env) {
# If $PARALLEL_ENV set, put that in front of the command # If $PARALLEL_ENV set, put that in front of the command
@ -9892,7 +9897,7 @@ sub header_indexes_sorted($) {
sub len($) { sub len($) {
# Uses: # Uses:
# $opt::shellquote # @opt::shellquote
# The length of the command line with args substituted # The length of the command line with args substituted
my $self = shift; my $self = shift;
my $len = 0; my $len = 0;
@ -9936,13 +9941,18 @@ sub len($) {
} }
if($Global::quoting) { if($Global::quoting) {
# Pessimistic length if -q is set # Pessimistic length if -q is set
# Worse than worst case: every char needs to be quoted with \ # Worse than worst case: ' => "'" + " => '"'
$len *= 2; # TODO can we count the number of expanding chars?
# and count them in arguments, too?
$len *= 3;
} }
if($opt::shellquote) { if(@opt::shellquote) {
# Pessimistic length if --shellquote is set # Pessimistic length if --shellquote is set
# Worse than worst case: every char needs to be quoted with \ twice # Worse than worst case: ' => "'"
$len *= 4; for(@opt::shellquote) {
$len *= 3;
}
$len *= 5;
} }
if(@opt::sshlogin) { if(@opt::sshlogin) {
# Pessimistic length if remote # Pessimistic length if remote

View file

@ -2129,11 +2129,15 @@ E.g.
B<--shebang-wrap> must be set as the first option. B<--shebang-wrap> must be set as the first option.
=item B<--shellquote> =item B<--shellquote> (alpha testing)
Does not run the command but quotes it. Useful for making quoted Does not run the command but quotes it. Useful for making quoted
composed commands for GNU B<parallel>. composed commands for GNU B<parallel>.
Multiple B<--shellquote> with quote the string multiple times, so
B<parallel --shellquote | parallel --shellquote> can be written as
B<parallel --shellquote --shellquote>.
=item B<--shuf> =item B<--shuf>

View file

@ -1417,7 +1417,8 @@ B<pyargs> deals badly with input containing spaces. It buffers stdout,
but not stderr. It buffers in RAM. {} does not work as replacement but not stderr. It buffers in RAM. {} does not work as replacement
string. It does not support running functions. string. It does not support running functions.
B<pyargs> does not support composed commands if run with B<--lines>. B<pyargs> does not support composed commands if run with B<--lines>,
and fails on B<pyargs traceroute gnu.org fsf.org>.
=head3 Examples =head3 Examples

View file

@ -251,11 +251,15 @@ par_test_diff_roundrobin_k() {
mytest() { mytest() {
K=$1 K=$1
doit() { doit() {
perl -ne 'select(undef, undef, undef, rand()/10000);print' | # Sleep random time ever 10k line
# to mix up which process gets the next block
perl -ne '$t++ % 10000 or select(undef, undef, undef, rand()/1000);print' |
md5sum md5sum
} }
export -f doit export -f doit
seq 100000 | parallel --block 2k --pipe $K --roundrobin doit | sort seq 1000000 |
parallel --block 65K --pipe $K --roundrobin doit |
sort
} }
export -f mytest export -f mytest
parset a,b,c mytest ::: -k -k '' parset a,b,c mytest ::: -k -k ''
@ -264,12 +268,13 @@ par_test_diff_roundrobin_k() {
if [ "$a" != "$c" ]; then if [ "$a" != "$c" ]; then
echo OK echo OK
else else
echo error echo error a c
fi fi
else else
echo error echo error a b
fi fi
} }
export -f $(compgen -A function | grep par_) export -f $(compgen -A function | grep par_)
compgen -A function | grep par_ | LC_ALL=C sort | parallel -j6 --tag -k '{} 2>&1' compgen -A function | grep par_ | LC_ALL=C sort |
parallel -j6 --tag -k --joblog /tmp/jl-`basename $0` '{} 2>&1'

View file

@ -129,4 +129,6 @@ compgen -A function | grep par_ | sort |
perl -pe 's/(from TBL99999 order) .*/$1/g' | perl -pe 's/(from TBL99999 order) .*/$1/g' |
perl -pe 's/ *\b'"$hostname"'\b */hostname/g' | perl -pe 's/ *\b'"$hostname"'\b */hostname/g' |
grep -v -- --------------- | grep -v -- --------------- |
perl -pe 's/ *\bhost\b */host/g' perl -pe 's/ *\bhost\b */host/g' |
perl -pe 's/ +/ /g'

View file

@ -56,6 +56,25 @@ par_env_parallel_onall() {
env_parallel -Slo --nonall doit works env_parallel -Slo --nonall doit works
} }
par_command_len_shellquote() {
echo '### test quoting will not cause a crash if too long'
# echo "'''" | parallel --shellquote --shellquote --shellquote --shellquote
testlen() {
echo "$1" | parallel $2 | wc
}
export -f testlen
outer() {
export PARALLEL="--env testlen -k --tag"
parallel $@ testlen '{=2 $_="$arg[1]"x$_ =}' '{=3 $_=" --shellquote"x$_ =}' \
::: '"' "'" ::: {1..10} ::: {1..10}
}
export -f outer
parallel --tag -k outer ::: '-Slo -j10' ''
}
export -f $(compgen -A function | grep par_) export -f $(compgen -A function | grep par_)
compgen -A function | grep par_ | sort -r | compgen -A function | grep par_ | sort -r |
parallel --joblog /tmp/jl-`basename $0` -j3 --tag -k --delay 0.1 --retries 3 '{} 2>&1' parallel --joblog /tmp/jl-`basename $0` -j3 --tag -k --delay 0.1 --retries 3 '{} 2>&1'

View file

@ -169,13 +169,13 @@ par_no_route_to_host() {
# Random hosts that there is no route to # Random hosts that there is no route to
findhosts() { findhosts() {
ip='$(($RANDOM%256)).$(($RANDOM%256)).$(($RANDOM%256)).$(($RANDOM%256))' ip='$(($RANDOM%256)).$(($RANDOM%256)).$(($RANDOM%256)).$(($RANDOM%256))'
stdout parallel --timeout 2 -j0 ssh $ip echo ::: {1..10000} | stdout parallel --timeout 2 -j0 ssh -o PasswordAuthentication=no $ip echo ::: {1..10000} |
perl -ne 's/ssh:.* host (\d+\.\d+\.\d+\.\d+) .* No route .*/$1/ and print; $|=1' perl -ne 's/ssh:.* host (\d+\.\d+\.\d+\.\d+) .* No route .*/$1/ and print; $|=1'
} }
# Retry if the hosts really fails this fast # Retry if the hosts really fails this fast
filterhosts() { filterhosts() {
stdout parallel --timeout 2 -j5 ssh {} echo | stdout parallel --timeout 2 -j5 ssh -o PasswordAuthentication=no {} echo |
perl -ne 's/ssh:.* host (\d+\.\d+\.\d+\.\d+) .* No route .*/$1/ and print; $|=1' perl -ne 's/ssh:.* host (\d+\.\d+\.\d+\.\d+) .* No route .*/$1/ and print; $|=1'
} }

View file

@ -6,12 +6,15 @@ unset TIMEOUT
env_parallel --session env_parallel --session
P_ALL="openstep qnx pidora alpha tru64 hpux-ia64 syllable raspbian solaris openindiana aix hpux debian-ppc suse solaris-x86 mandriva ubuntu scosysv unixware centos miros macosx redhat netbsd openbsd freebsd debian dragonfly vax ultrix minix irix hurd beaglebone cubieboard2" P_ALL="openstep qnx pidora alpha tru64 hpux-ia64 syllable raspbian solaris openindiana aix hpux debian-ppc suse solaris-x86 mandriva ubuntu scosysv unixware centos miros macosx redhat netbsd openbsd freebsd debian dragonfly vax ultrix minix irix hurd beaglebone cubieboard2"
# Skip irix until Perl is upgraded
P_ALL="openstep qnx pidora alpha tru64 hpux-ia64 syllable raspbian solaris openindiana aix hpux debian-ppc suse solaris-x86 mandriva ubuntu scosysv unixware centos miros macosx redhat netbsd openbsd freebsd debian dragonfly vax ultrix minix hurd beaglebone cubieboard2"
P="$P_ALL" P="$P_ALL"
# tru64 takes 22s to run 4 parallels # tru64 takes 22s to run 4 parallels
MAXTIME=50 MAXTIME=50
RETRIES=3 RETRIES=3
MAXPROC=${maxproc:-11} # 11 too much for debian
MAXPROC=${maxproc:-9}
MAXINNERPROC=${maxinnerproc:-3} MAXINNERPROC=${maxinnerproc:-3}
export PARALLEL_SSH="ssh -oLogLevel=quiet" export PARALLEL_SSH="ssh -oLogLevel=quiet"
@ -47,7 +50,16 @@ doit() {
sshwithpass() { sshwithpass() {
# Minix requires sshpass. The other servers will use ssh-keys # Minix requires sshpass. The other servers will use ssh-keys
sshpass -f ~/.ssh/minix.password ssh -oLogLevel=quiet "$@" host="$1"
shift
if [ "$host" == "minix" ] ; then
q="$(parallel --shellquote ::: "$@")"
# This only works from suse and redhat
ssh -T -oLogLevel=quiet suse \
sshpass -f ~/.ssh/minix.password ssh -T -oLogLevel=quiet $host $q
else
ssh -oLogLevel=quiet $host "$@"
fi
} }
export -f sshwithpass export -f sshwithpass
@ -62,14 +74,14 @@ doit() {
export -f copy export -f copy
par_nonall() { par_nonall() {
sshwithpass() {
# Minix requires sshpass. The other servers will use ssh-keys
sshpass -f ~/.ssh/minix.password ssh -oLogLevel=quiet "$@"
}
export -f sshwithpass
parallel -j$MAXPROC $RET_TIME_K --delay 0.1 --tag \ parallel -j$MAXPROC $RET_TIME_K --delay 0.1 --tag \
--nonall $S_POLAR -S "1/sshwithpass minix" --argsep ,:- \ --nonall $S_POLAR -S "1/sshwithpass minix" --argsep ,:- \
'source setupenv >&/dev/null || . `pwd`/setupenv;' "$@" 'source setupenv >&/dev/null || . `pwd`/setupenv;' "$@"
# setupenv contains something like this (adapted to the local path and shell)
#
# PATH=$HOME/bin:$PATH:/usr/local/bin
# export PATH
# . bin/env_parallel.sh
} }
export -f par_nonall export -f par_nonall
@ -110,7 +122,7 @@ doit() {
cat <(echo bash only A) cat <(echo bash only A)
} }
export -f funcA; export -f funcA;
bin/parallel funcA ::: 1' 2>&1 bin/parallel funcA ::: 1' 2>&1 | sort
echo echo
echo '### Does PARALLEL_SHELL help exporting a bash function' echo '### Does PARALLEL_SHELL help exporting a bash function'

View file

@ -27,8 +27,8 @@ par_interactive sleep 0.1; echo opt-p 2 ?...n
par_interactive sleep 0.1; echo opt-p 3 ?...y par_interactive sleep 0.1; echo opt-p 3 ?...y
par_interactive spawn /tmp/parallel-script-for-expect par_interactive spawn /tmp/parallel-script-for-expect
par_k ### Test -k par_k ### Test -k
par_k parallel: Warning: Only enough file handles to run 9 jobs in parallel. par_k parallel: Warning: Only enough file handles to run 8 jobs in parallel.
par_k parallel: Warning: Running 'parallel -j0 -N 9 --pipe parallel -j0' or par_k parallel: Warning: Running 'parallel -j0 -N 8 --pipe parallel -j0' or
par_k parallel: Warning: raising 'ulimit -n' or 'nofile' in /etc/security/limits.conf par_k parallel: Warning: raising 'ulimit -n' or 'nofile' in /etc/security/limits.conf
par_k parallel: Warning: or /proc/sys/fs/file-max may help. par_k parallel: Warning: or /proc/sys/fs/file-max may help.
par_k begin par_k begin
@ -325,10 +325,10 @@ par_results_compress 0
par_results_compress 1 par_results_compress 1
par_results_csv bug #: --results csv par_results_csv bug #: --results csv
par_results_csv --header : --tag --files --compress Seq,Host,Starttime,JobRuntime,Send,Receive,Exitval,Signal,Command,H2,H1,Stdout,Stderr par_results_csv --header : --tag --files --compress Seq,Host,Starttime,JobRuntime,Send,Receive,Exitval,Signal,Command,H2,H1,Stdout,Stderr
par_results_csv --header : --tag --files --compress 1,:,999.999,999.999,0,31,0,0,"echo 22 11",22,11,"22 11 /tmp/parallel-local-10s-tmpdir/tmpfile", par_results_csv --header : --tag --files --compress 1,:,999.999,999.999,0,15,0,0,"echo 22 11",22,11,"22 11 /tmp/parallel-local-10s-tmpdir/tmpfile",
par_results_csv --header : --tag --files --compress 2,:,999.999,999.999,0,31,0,0,"echo 22 12",22,12,"22 12 /tmp/parallel-local-10s-tmpdir/tmpfile", par_results_csv --header : --tag --files --compress 2,:,999.999,999.999,0,15,0,0,"echo 22 12",22,12,"22 12 /tmp/parallel-local-10s-tmpdir/tmpfile",
par_results_csv --header : --tag --files --compress 3,:,999.999,999.999,0,31,0,0,"echo 23 11",23,11,"23 11 /tmp/parallel-local-10s-tmpdir/tmpfile", par_results_csv --header : --tag --files --compress 3,:,999.999,999.999,0,15,0,0,"echo 23 11",23,11,"23 11 /tmp/parallel-local-10s-tmpdir/tmpfile",
par_results_csv --header : --tag --files --compress 4,:,999.999,999.999,0,31,0,0,"echo 23 12",23,12,"23 12 /tmp/parallel-local-10s-tmpdir/tmpfile", par_results_csv --header : --tag --files --compress 4,:,999.999,999.999,0,15,0,0,"echo 23 12",23,12,"23 12 /tmp/parallel-local-10s-tmpdir/tmpfile",
par_results_csv --header : --tag --files Seq,Host,Starttime,JobRuntime,Send,Receive,Exitval,Signal,Command,H2,H1,Stdout,Stderr par_results_csv --header : --tag --files Seq,Host,Starttime,JobRuntime,Send,Receive,Exitval,Signal,Command,H2,H1,Stdout,Stderr
par_results_csv --header : --tag --files 1,:,999.999,999.999,0,6,0,0,"echo 22 11",22,11,"22 11 /tmp/parallel-local-10s-tmpdir/tmpfile", par_results_csv --header : --tag --files 1,:,999.999,999.999,0,6,0,0,"echo 22 11",22,11,"22 11 /tmp/parallel-local-10s-tmpdir/tmpfile",
par_results_csv --header : --tag --files 2,:,999.999,999.999,0,6,0,0,"echo 22 12",22,12,"22 12 /tmp/parallel-local-10s-tmpdir/tmpfile", par_results_csv --header : --tag --files 2,:,999.999,999.999,0,6,0,0,"echo 22 12",22,12,"22 12 /tmp/parallel-local-10s-tmpdir/tmpfile",
@ -353,10 +353,10 @@ par_results_csv --header : --tag ",
par_results_csv --header : --tag 4,:,999.999,999.999,0,6,0,0,"echo 23 12",23,12,"23 12 23 12 par_results_csv --header : --tag 4,:,999.999,999.999,0,6,0,0,"echo 23 12",23,12,"23 12 23 12
par_results_csv --header : --tag ", par_results_csv --header : --tag ",
par_results_csv --header : --files --compress Seq,Host,Starttime,JobRuntime,Send,Receive,Exitval,Signal,Command,H2,H1,Stdout,Stderr par_results_csv --header : --files --compress Seq,Host,Starttime,JobRuntime,Send,Receive,Exitval,Signal,Command,H2,H1,Stdout,Stderr
par_results_csv --header : --files --compress 1,:,999.999,999.999,0,31,0,0,"echo 22 11",22,11,/tmp/parallel-local-10s-tmpdir/tmpfile, par_results_csv --header : --files --compress 1,:,999.999,999.999,0,15,0,0,"echo 22 11",22,11,/tmp/parallel-local-10s-tmpdir/tmpfile,
par_results_csv --header : --files --compress 2,:,999.999,999.999,0,31,0,0,"echo 22 12",22,12,/tmp/parallel-local-10s-tmpdir/tmpfile, par_results_csv --header : --files --compress 2,:,999.999,999.999,0,15,0,0,"echo 22 12",22,12,/tmp/parallel-local-10s-tmpdir/tmpfile,
par_results_csv --header : --files --compress 3,:,999.999,999.999,0,31,0,0,"echo 23 11",23,11,/tmp/parallel-local-10s-tmpdir/tmpfile, par_results_csv --header : --files --compress 3,:,999.999,999.999,0,15,0,0,"echo 23 11",23,11,/tmp/parallel-local-10s-tmpdir/tmpfile,
par_results_csv --header : --files --compress 4,:,999.999,999.999,0,31,0,0,"echo 23 12",23,12,/tmp/parallel-local-10s-tmpdir/tmpfile, par_results_csv --header : --files --compress 4,:,999.999,999.999,0,15,0,0,"echo 23 12",23,12,/tmp/parallel-local-10s-tmpdir/tmpfile,
par_results_csv --header : --files Seq,Host,Starttime,JobRuntime,Send,Receive,Exitval,Signal,Command,H2,H1,Stdout,Stderr par_results_csv --header : --files Seq,Host,Starttime,JobRuntime,Send,Receive,Exitval,Signal,Command,H2,H1,Stdout,Stderr
par_results_csv --header : --files 1,:,999.999,999.999,0,6,0,0,"echo 22 11",22,11,/tmp/parallel-local-10s-tmpdir/tmpfile, par_results_csv --header : --files 1,:,999.999,999.999,0,6,0,0,"echo 22 11",22,11,/tmp/parallel-local-10s-tmpdir/tmpfile,
par_results_csv --header : --files 2,:,999.999,999.999,0,6,0,0,"echo 22 12",22,12,/tmp/parallel-local-10s-tmpdir/tmpfile, par_results_csv --header : --files 2,:,999.999,999.999,0,6,0,0,"echo 22 12",22,12,/tmp/parallel-local-10s-tmpdir/tmpfile,
@ -381,15 +381,15 @@ par_results_csv --header : ",
par_results_csv --header : 4,:,999.999,999.999,0,6,0,0,"echo 23 12",23,12,"23 12 par_results_csv --header : 4,:,999.999,999.999,0,6,0,0,"echo 23 12",23,12,"23 12
par_results_csv --header : ", par_results_csv --header : ",
par_results_csv --tag --files --compress Seq,Host,Starttime,JobRuntime,Send,Receive,Exitval,Signal,Command,V1,V2,Stdout,Stderr par_results_csv --tag --files --compress Seq,Host,Starttime,JobRuntime,Send,Receive,Exitval,Signal,Command,V1,V2,Stdout,Stderr
par_results_csv --tag --files --compress 1,:,999.999,999.999,0,31,0,0,"echo H2 H1",H2,H1,"H2 H1 /tmp/parallel-local-10s-tmpdir/tmpfile", par_results_csv --tag --files --compress 1,:,999.999,999.999,0,15,0,0,"echo H2 H1",H2,H1,"H2 H1 /tmp/parallel-local-10s-tmpdir/tmpfile",
par_results_csv --tag --files --compress 2,:,999.999,999.999,0,31,0,0,"echo H2 11",H2,11,"H2 11 /tmp/parallel-local-10s-tmpdir/tmpfile", par_results_csv --tag --files --compress 2,:,999.999,999.999,0,15,0,0,"echo H2 11",H2,11,"H2 11 /tmp/parallel-local-10s-tmpdir/tmpfile",
par_results_csv --tag --files --compress 3,:,999.999,999.999,0,31,0,0,"echo H2 12",H2,12,"H2 12 /tmp/parallel-local-10s-tmpdir/tmpfile", par_results_csv --tag --files --compress 3,:,999.999,999.999,0,15,0,0,"echo H2 12",H2,12,"H2 12 /tmp/parallel-local-10s-tmpdir/tmpfile",
par_results_csv --tag --files --compress 4,:,999.999,999.999,0,31,0,0,"echo 22 H1",22,H1,"22 H1 /tmp/parallel-local-10s-tmpdir/tmpfile", par_results_csv --tag --files --compress 4,:,999.999,999.999,0,15,0,0,"echo 22 H1",22,H1,"22 H1 /tmp/parallel-local-10s-tmpdir/tmpfile",
par_results_csv --tag --files --compress 5,:,999.999,999.999,0,31,0,0,"echo 22 11",22,11,"22 11 /tmp/parallel-local-10s-tmpdir/tmpfile", par_results_csv --tag --files --compress 5,:,999.999,999.999,0,15,0,0,"echo 22 11",22,11,"22 11 /tmp/parallel-local-10s-tmpdir/tmpfile",
par_results_csv --tag --files --compress 6,:,999.999,999.999,0,31,0,0,"echo 22 12",22,12,"22 12 /tmp/parallel-local-10s-tmpdir/tmpfile", par_results_csv --tag --files --compress 6,:,999.999,999.999,0,15,0,0,"echo 22 12",22,12,"22 12 /tmp/parallel-local-10s-tmpdir/tmpfile",
par_results_csv --tag --files --compress 7,:,999.999,999.999,0,31,0,0,"echo 23 H1",23,H1,"23 H1 /tmp/parallel-local-10s-tmpdir/tmpfile", par_results_csv --tag --files --compress 7,:,999.999,999.999,0,15,0,0,"echo 23 H1",23,H1,"23 H1 /tmp/parallel-local-10s-tmpdir/tmpfile",
par_results_csv --tag --files --compress 8,:,999.999,999.999,0,31,0,0,"echo 23 11",23,11,"23 11 /tmp/parallel-local-10s-tmpdir/tmpfile", par_results_csv --tag --files --compress 8,:,999.999,999.999,0,15,0,0,"echo 23 11",23,11,"23 11 /tmp/parallel-local-10s-tmpdir/tmpfile",
par_results_csv --tag --files --compress 9,:,999.999,999.999,0,31,0,0,"echo 23 12",23,12,"23 12 /tmp/parallel-local-10s-tmpdir/tmpfile", par_results_csv --tag --files --compress 9,:,999.999,999.999,0,15,0,0,"echo 23 12",23,12,"23 12 /tmp/parallel-local-10s-tmpdir/tmpfile",
par_results_csv --tag --files Seq,Host,Starttime,JobRuntime,Send,Receive,Exitval,Signal,Command,V1,V2,Stdout,Stderr par_results_csv --tag --files Seq,Host,Starttime,JobRuntime,Send,Receive,Exitval,Signal,Command,V1,V2,Stdout,Stderr
par_results_csv --tag --files 1,:,999.999,999.999,0,6,0,0,"echo H2 H1",H2,H1,"H2 H1 /tmp/parallel-local-10s-tmpdir/tmpfile", par_results_csv --tag --files 1,:,999.999,999.999,0,6,0,0,"echo H2 H1",H2,H1,"H2 H1 /tmp/parallel-local-10s-tmpdir/tmpfile",
par_results_csv --tag --files 2,:,999.999,999.999,0,6,0,0,"echo H2 11",H2,11,"H2 11 /tmp/parallel-local-10s-tmpdir/tmpfile", par_results_csv --tag --files 2,:,999.999,999.999,0,6,0,0,"echo H2 11",H2,11,"H2 11 /tmp/parallel-local-10s-tmpdir/tmpfile",
@ -439,15 +439,15 @@ par_results_csv --tag ",
par_results_csv --tag 9,:,999.999,999.999,0,6,0,0,"echo 23 12",23,12,"23 12 23 12 par_results_csv --tag 9,:,999.999,999.999,0,6,0,0,"echo 23 12",23,12,"23 12 23 12
par_results_csv --tag ", par_results_csv --tag ",
par_results_csv --files --compress Seq,Host,Starttime,JobRuntime,Send,Receive,Exitval,Signal,Command,V1,V2,Stdout,Stderr par_results_csv --files --compress Seq,Host,Starttime,JobRuntime,Send,Receive,Exitval,Signal,Command,V1,V2,Stdout,Stderr
par_results_csv --files --compress 1,:,999.999,999.999,0,31,0,0,"echo H2 H1",H2,H1,/tmp/parallel-local-10s-tmpdir/tmpfile, par_results_csv --files --compress 1,:,999.999,999.999,0,15,0,0,"echo H2 H1",H2,H1,/tmp/parallel-local-10s-tmpdir/tmpfile,
par_results_csv --files --compress 2,:,999.999,999.999,0,31,0,0,"echo H2 11",H2,11,/tmp/parallel-local-10s-tmpdir/tmpfile, par_results_csv --files --compress 2,:,999.999,999.999,0,15,0,0,"echo H2 11",H2,11,/tmp/parallel-local-10s-tmpdir/tmpfile,
par_results_csv --files --compress 3,:,999.999,999.999,0,31,0,0,"echo H2 12",H2,12,/tmp/parallel-local-10s-tmpdir/tmpfile, par_results_csv --files --compress 3,:,999.999,999.999,0,15,0,0,"echo H2 12",H2,12,/tmp/parallel-local-10s-tmpdir/tmpfile,
par_results_csv --files --compress 4,:,999.999,999.999,0,31,0,0,"echo 22 H1",22,H1,/tmp/parallel-local-10s-tmpdir/tmpfile, par_results_csv --files --compress 4,:,999.999,999.999,0,15,0,0,"echo 22 H1",22,H1,/tmp/parallel-local-10s-tmpdir/tmpfile,
par_results_csv --files --compress 5,:,999.999,999.999,0,31,0,0,"echo 22 11",22,11,/tmp/parallel-local-10s-tmpdir/tmpfile, par_results_csv --files --compress 5,:,999.999,999.999,0,15,0,0,"echo 22 11",22,11,/tmp/parallel-local-10s-tmpdir/tmpfile,
par_results_csv --files --compress 6,:,999.999,999.999,0,31,0,0,"echo 22 12",22,12,/tmp/parallel-local-10s-tmpdir/tmpfile, par_results_csv --files --compress 6,:,999.999,999.999,0,15,0,0,"echo 22 12",22,12,/tmp/parallel-local-10s-tmpdir/tmpfile,
par_results_csv --files --compress 7,:,999.999,999.999,0,31,0,0,"echo 23 H1",23,H1,/tmp/parallel-local-10s-tmpdir/tmpfile, par_results_csv --files --compress 7,:,999.999,999.999,0,15,0,0,"echo 23 H1",23,H1,/tmp/parallel-local-10s-tmpdir/tmpfile,
par_results_csv --files --compress 8,:,999.999,999.999,0,31,0,0,"echo 23 11",23,11,/tmp/parallel-local-10s-tmpdir/tmpfile, par_results_csv --files --compress 8,:,999.999,999.999,0,15,0,0,"echo 23 11",23,11,/tmp/parallel-local-10s-tmpdir/tmpfile,
par_results_csv --files --compress 9,:,999.999,999.999,0,31,0,0,"echo 23 12",23,12,/tmp/parallel-local-10s-tmpdir/tmpfile, par_results_csv --files --compress 9,:,999.999,999.999,0,15,0,0,"echo 23 12",23,12,/tmp/parallel-local-10s-tmpdir/tmpfile,
par_results_csv --files Seq,Host,Starttime,JobRuntime,Send,Receive,Exitval,Signal,Command,V1,V2,Stdout,Stderr par_results_csv --files Seq,Host,Starttime,JobRuntime,Send,Receive,Exitval,Signal,Command,V1,V2,Stdout,Stderr
par_results_csv --files 1,:,999.999,999.999,0,6,0,0,"echo H2 H1",H2,H1,/tmp/parallel-local-10s-tmpdir/tmpfile, par_results_csv --files 1,:,999.999,999.999,0,6,0,0,"echo H2 H1",H2,H1,/tmp/parallel-local-10s-tmpdir/tmpfile,
par_results_csv --files 2,:,999.999,999.999,0,6,0,0,"echo H2 11",H2,11,/tmp/parallel-local-10s-tmpdir/tmpfile, par_results_csv --files 2,:,999.999,999.999,0,6,0,0,"echo H2 11",H2,11,/tmp/parallel-local-10s-tmpdir/tmpfile,
@ -531,9 +531,9 @@ par_slow_total_jobs 2
par_slow_total_jobs parallel: Warning: Reading X arguments took longer than XX seconds. par_slow_total_jobs parallel: Warning: Reading X arguments took longer than XX seconds.
par_sockets_cores_threads ### Test --number-of-sockets/cores/threads par_sockets_cores_threads ### Test --number-of-sockets/cores/threads
par_sockets_cores_threads 1 par_sockets_cores_threads 1
par_sockets_cores_threads 2
par_sockets_cores_threads 4 par_sockets_cores_threads 4
par_sockets_cores_threads 2 par_sockets_cores_threads 8
par_sockets_cores_threads 4
par_sockets_cores_threads ### Test --use-sockets-instead-of-threads par_sockets_cores_threads ### Test --use-sockets-instead-of-threads
par_sockets_cores_threads threads done par_sockets_cores_threads threads done
par_sockets_cores_threads sockets done par_sockets_cores_threads sockets done

File diff suppressed because it is too large Load diff

View file

@ -90,14 +90,14 @@ par_tee_ssh 2
par_tee_ssh 3 par_tee_ssh 3
par_tee_ssh 3 par_tee_ssh 3
par_wd_no_such_dir ### --wd no-such-dir - csh par_wd_no_such_dir ### --wd no-such-dir - csh
par_wd_no_such_dir mkdir: cannot create directory /no-such-dir: Permission denied par_wd_no_such_dir mkdir: cannot create directory '/no-such-dir': Permission denied
par_wd_no_such_dir parallel: Cannot chdir to /no-such-dir par_wd_no_such_dir parallel: Cannot chdir to /no-such-dir
par_wd_no_such_dir Exit code 1 par_wd_no_such_dir Exit code 1
par_wd_no_such_dir ### --wd no-such-dir - tcsh par_wd_no_such_dir ### --wd no-such-dir - tcsh
par_wd_no_such_dir mkdir: cannot create directory /no-such-dir: Permission denied par_wd_no_such_dir mkdir: cannot create directory '/no-such-dir': Permission denied
par_wd_no_such_dir parallel: Cannot chdir to /no-such-dir par_wd_no_such_dir parallel: Cannot chdir to /no-such-dir
par_wd_no_such_dir Exit code 1 par_wd_no_such_dir Exit code 1
par_wd_no_such_dir ### --wd no-such-dir - bash par_wd_no_such_dir ### --wd no-such-dir - bash
par_wd_no_such_dir mkdir: cannot create directory /no-such-dir: Permission denied par_wd_no_such_dir mkdir: cannot create directory '/no-such-dir': Permission denied
par_wd_no_such_dir parallel: Cannot chdir to /no-such-dir par_wd_no_such_dir parallel: Cannot chdir to /no-such-dir
par_wd_no_such_dir Exit code 1 par_wd_no_such_dir Exit code 1

View file

@ -18,6 +18,527 @@ par_env_parallel_onall Myfunc works
par_controlmaster_eats bug #36707: --controlmaster eats jobs par_controlmaster_eats bug #36707: --controlmaster eats jobs
par_controlmaster_eats OK1 par_controlmaster_eats OK1
par_controlmaster_eats OK2 par_controlmaster_eats OK2
par_command_len_shellquote ### test quoting will not cause a crash if too long
par_command_len_shellquote -Slo -j10 " 1 1 1 1 4
par_command_len_shellquote -Slo -j10 " 1 2 1 1 10
par_command_len_shellquote -Slo -j10 " 1 3 1 1 28
par_command_len_shellquote -Slo -j10 " 1 4 1 1 82
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 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
par_command_len_shellquote -Slo -j10 " 2 3 1 1 29
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 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
par_command_len_shellquote -Slo -j10 " 3 2 1 1 12
par_command_len_shellquote -Slo -j10 " 3 3 1 1 30
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 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
par_command_len_shellquote -Slo -j10 " 4 2 1 1 13
par_command_len_shellquote -Slo -j10 " 4 3 1 1 31
par_command_len_shellquote -Slo -j10 " 4 4 1 1 85
par_command_len_shellquote -Slo -j10 " 4 5 1 1 247
par_command_len_shellquote -Slo -j10 " 4 6 1 1 733
par_command_len_shellquote -Slo -j10 " 4 7 1 1 2191
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
par_command_len_shellquote -Slo -j10 " 5 1 1 1 8
par_command_len_shellquote -Slo -j10 " 5 2 1 1 14
par_command_len_shellquote -Slo -j10 " 5 3 1 1 32
par_command_len_shellquote -Slo -j10 " 5 4 1 1 86
par_command_len_shellquote -Slo -j10 " 5 5 1 1 248
par_command_len_shellquote -Slo -j10 " 5 6 1 1 734
par_command_len_shellquote -Slo -j10 " 5 7 1 1 2192
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
par_command_len_shellquote -Slo -j10 " 6 1 1 1 9
par_command_len_shellquote -Slo -j10 " 6 2 1 1 15
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 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
par_command_len_shellquote -Slo -j10 " 7 1 1 1 10
par_command_len_shellquote -Slo -j10 " 7 2 1 1 16
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 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
par_command_len_shellquote -Slo -j10 " 8 1 1 1 11
par_command_len_shellquote -Slo -j10 " 8 2 1 1 17
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 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
par_command_len_shellquote -Slo -j10 " 9 1 1 1 12
par_command_len_shellquote -Slo -j10 " 9 2 1 1 18
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 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
par_command_len_shellquote -Slo -j10 " 10 1 1 1 13
par_command_len_shellquote -Slo -j10 " 10 2 1 1 19
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 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 1 1 1 4
par_command_len_shellquote -Slo -j10 ' 1 2 1 1 10
par_command_len_shellquote -Slo -j10 ' 1 3 1 1 28
par_command_len_shellquote -Slo -j10 ' 1 4 1 1 82
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 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
par_command_len_shellquote -Slo -j10 ' 2 3 1 1 81
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 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
par_command_len_shellquote -Slo -j10 ' 3 2 1 1 44
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 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
par_command_len_shellquote -Slo -j10 ' 4 2 1 1 61
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 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
par_command_len_shellquote -Slo -j10 ' 5 1 1 1 24
par_command_len_shellquote -Slo -j10 ' 5 2 1 1 78
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 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
par_command_len_shellquote -Slo -j10 ' 6 1 1 1 29
par_command_len_shellquote -Slo -j10 ' 6 2 1 1 95
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 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
par_command_len_shellquote -Slo -j10 ' 7 1 1 1 34
par_command_len_shellquote -Slo -j10 ' 7 2 1 1 112
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 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
par_command_len_shellquote -Slo -j10 ' 8 1 1 1 39
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 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
par_command_len_shellquote -Slo -j10 ' 9 1 1 1 44
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 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
par_command_len_shellquote -Slo -j10 ' 10 1 1 1 49
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 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 >= 131049) at input 0: "
par_command_len_shellquote -Slo -j10 " 2 9 parallel: Error: Command line too long (196830 >= 131049) at input 0: ""
par_command_len_shellquote -Slo -j10 " 2 10 parallel: Error: Command line too long (590490 >= 131049) at input 0: ""
par_command_len_shellquote -Slo -j10 " 3 9 parallel: Error: Command line too long (295245 >= 131049) at input 0: """
par_command_len_shellquote -Slo -j10 " 3 10 parallel: Error: Command line too long (885735 >= 131049) at input 0: """
par_command_len_shellquote -Slo -j10 " 4 8 parallel: Error: Command line too long (131220 >= 131049) at input 0: """"
par_command_len_shellquote -Slo -j10 " 4 9 parallel: Error: Command line too long (393660 >= 131049) at input 0: """"
par_command_len_shellquote -Slo -j10 " 4 10 parallel: Error: Command line too long (1180980 >= 131049) at input 0: """"
par_command_len_shellquote -Slo -j10 " 5 8 parallel: Error: Command line too long (164025 >= 131049) at input 0: """""
par_command_len_shellquote -Slo -j10 " 5 9 parallel: Error: Command line too long (492075 >= 131049) at input 0: """""
par_command_len_shellquote -Slo -j10 " 5 10 parallel: Error: Command line too long (1476225 >= 131049) at input 0: """""
par_command_len_shellquote -Slo -j10 " 6 8 parallel: Error: Command line too long (196830 >= 131049) at input 0: """"""
par_command_len_shellquote -Slo -j10 " 6 9 parallel: Error: Command line too long (590490 >= 131049) at input 0: """"""
par_command_len_shellquote -Slo -j10 " 6 10 parallel: Error: Command line too long (1771470 >= 131049) at input 0: """"""
par_command_len_shellquote -Slo -j10 " 7 8 parallel: Error: Command line too long (229635 >= 131049) at input 0: """""""
par_command_len_shellquote -Slo -j10 " 7 9 parallel: Error: Command line too long (688905 >= 131049) at input 0: """""""
par_command_len_shellquote -Slo -j10 " 7 10 parallel: Error: Command line too long (2066715 >= 131049) at input 0: """""""
par_command_len_shellquote -Slo -j10 " 8 8 parallel: Error: Command line too long (262440 >= 131049) at input 0: """"""""
par_command_len_shellquote -Slo -j10 " 8 9 parallel: Error: Command line too long (787320 >= 131049) at input 0: """"""""
par_command_len_shellquote -Slo -j10 " 8 10 parallel: Error: Command line too long (2361960 >= 131049) at input 0: """"""""
par_command_len_shellquote -Slo -j10 " 9 8 parallel: Error: Command line too long (295245 >= 131049) at input 0: """""""""
par_command_len_shellquote -Slo -j10 " 9 9 parallel: Error: Command line too long (885735 >= 131049) at input 0: """""""""
par_command_len_shellquote -Slo -j10 " 9 10 parallel: Error: Command line too long (2657205 >= 131049) at input 0: """""""""
par_command_len_shellquote -Slo -j10 " 10 8 parallel: Error: Command line too long (328050 >= 131049) at input 0: """"""""""
par_command_len_shellquote -Slo -j10 " 10 9 parallel: Error: Command line too long (984150 >= 131049) at input 0: """"""""""
par_command_len_shellquote -Slo -j10 " 10 10 parallel: Error: Command line too long (2952450 >= 131049) at input 0: """"""""""
par_command_len_shellquote -Slo -j10 ' 1 10 parallel: Error: Command line too long (295245 >= 131049) at input 0: '
par_command_len_shellquote -Slo -j10 ' 2 9 parallel: Error: Command line too long (196830 >= 131049) at input 0: ''
par_command_len_shellquote -Slo -j10 ' 2 10 parallel: Error: Command line too long (590490 >= 131049) at input 0: ''
par_command_len_shellquote -Slo -j10 ' 3 9 parallel: Error: Command line too long (295245 >= 131049) at input 0: '''
par_command_len_shellquote -Slo -j10 ' 3 10 parallel: Error: Command line too long (885735 >= 131049) at input 0: '''
par_command_len_shellquote -Slo -j10 ' 4 8 parallel: Error: Command line too long (131220 >= 131049) at input 0: ''''
par_command_len_shellquote -Slo -j10 ' 4 9 parallel: Error: Command line too long (393660 >= 131049) at input 0: ''''
par_command_len_shellquote -Slo -j10 ' 4 10 parallel: Error: Command line too long (1180980 >= 131049) at input 0: ''''
par_command_len_shellquote -Slo -j10 ' 5 8 parallel: Error: Command line too long (164025 >= 131049) at input 0: '''''
par_command_len_shellquote -Slo -j10 ' 5 9 parallel: Error: Command line too long (492075 >= 131049) at input 0: '''''
par_command_len_shellquote -Slo -j10 ' 5 10 parallel: Error: Command line too long (1476225 >= 131049) at input 0: '''''
par_command_len_shellquote -Slo -j10 ' 6 8 parallel: Error: Command line too long (196830 >= 131049) at input 0: ''''''
par_command_len_shellquote -Slo -j10 ' 6 9 parallel: Error: Command line too long (590490 >= 131049) at input 0: ''''''
par_command_len_shellquote -Slo -j10 ' 6 10 parallel: Error: Command line too long (1771470 >= 131049) at input 0: ''''''
par_command_len_shellquote -Slo -j10 ' 7 8 parallel: Error: Command line too long (229635 >= 131049) at input 0: '''''''
par_command_len_shellquote -Slo -j10 ' 7 9 parallel: Error: Command line too long (688905 >= 131049) at input 0: '''''''
par_command_len_shellquote -Slo -j10 ' 7 10 parallel: Error: Command line too long (2066715 >= 131049) at input 0: '''''''
par_command_len_shellquote -Slo -j10 ' 8 8 parallel: Error: Command line too long (262440 >= 131049) at input 0: ''''''''
par_command_len_shellquote -Slo -j10 ' 8 9 parallel: Error: Command line too long (787320 >= 131049) at input 0: ''''''''
par_command_len_shellquote -Slo -j10 ' 8 10 parallel: Error: Command line too long (2361960 >= 131049) at input 0: ''''''''
par_command_len_shellquote -Slo -j10 ' 9 8 parallel: Error: Command line too long (295245 >= 131049) at input 0: '''''''''
par_command_len_shellquote -Slo -j10 ' 9 9 parallel: Error: Command line too long (885735 >= 131049) at input 0: '''''''''
par_command_len_shellquote -Slo -j10 ' 9 10 parallel: Error: Command line too long (2657205 >= 131049) at input 0: '''''''''
par_command_len_shellquote -Slo -j10 ' 10 8 parallel: Error: Command line too long (328050 >= 131049) at input 0: ''''''''''
par_command_len_shellquote -Slo -j10 ' 10 9 parallel: Error: Command line too long (984150 >= 131049) at input 0: ''''''''''
par_command_len_shellquote -Slo -j10 ' 10 10 parallel: Error: Command line too long (2952450 >= 131049) 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
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 9 0 0 0
par_command_len_shellquote " 1 10 0 0 0
par_command_len_shellquote " 2 1 1 2 8
par_command_len_shellquote " 2 2 1 2 14
par_command_len_shellquote " 2 3 1 2 32
par_command_len_shellquote " 2 4 1 2 86
par_command_len_shellquote " 2 5 1 2 248
par_command_len_shellquote " 2 6 1 2 734
par_command_len_shellquote " 2 7 1 2 2192
par_command_len_shellquote " 2 8 0 0 0
par_command_len_shellquote " 2 9 0 0 0
par_command_len_shellquote " 2 10 0 0 0
par_command_len_shellquote " 3 1 1 2 10
par_command_len_shellquote " 3 2 1 2 16
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 8 0 0 0
par_command_len_shellquote " 3 9 0 0 0
par_command_len_shellquote " 3 10 0 0 0
par_command_len_shellquote " 4 1 1 2 12
par_command_len_shellquote " 4 2 1 2 18
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 8 0 0 0
par_command_len_shellquote " 4 9 0 0 0
par_command_len_shellquote " 4 10 0 0 0
par_command_len_shellquote " 5 1 1 2 14
par_command_len_shellquote " 5 2 1 2 20
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 8 0 0 0
par_command_len_shellquote " 5 9 0 0 0
par_command_len_shellquote " 5 10 0 0 0
par_command_len_shellquote " 6 1 1 2 16
par_command_len_shellquote " 6 2 1 2 22
par_command_len_shellquote " 6 3 1 2 40
par_command_len_shellquote " 6 4 1 2 94
par_command_len_shellquote " 6 5 1 2 256
par_command_len_shellquote " 6 6 1 2 742
par_command_len_shellquote " 6 7 0 0 0
par_command_len_shellquote " 6 8 0 0 0
par_command_len_shellquote " 6 9 0 0 0
par_command_len_shellquote " 6 10 0 0 0
par_command_len_shellquote " 7 1 1 2 18
par_command_len_shellquote " 7 2 1 2 24
par_command_len_shellquote " 7 3 1 2 42
par_command_len_shellquote " 7 4 1 2 96
par_command_len_shellquote " 7 5 1 2 258
par_command_len_shellquote " 7 6 1 2 744
par_command_len_shellquote " 7 7 0 0 0
par_command_len_shellquote " 7 8 0 0 0
par_command_len_shellquote " 7 9 0 0 0
par_command_len_shellquote " 7 10 0 0 0
par_command_len_shellquote " 8 1 1 2 20
par_command_len_shellquote " 8 2 1 2 26
par_command_len_shellquote " 8 3 1 2 44
par_command_len_shellquote " 8 4 1 2 98
par_command_len_shellquote " 8 5 1 2 260
par_command_len_shellquote " 8 6 1 2 746
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
par_command_len_shellquote " 8 10 0 0 0
par_command_len_shellquote " 9 1 1 2 22
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 7 0 0 0
par_command_len_shellquote " 9 8 0 0 0
par_command_len_shellquote " 9 9 0 0 0
par_command_len_shellquote " 9 10 0 0 0
par_command_len_shellquote " 10 1 1 2 24
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 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 1 1 2 6
par_command_len_shellquote ' 1 2 1 2 12
par_command_len_shellquote ' 1 3 1 2 30
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 9 0 0 0
par_command_len_shellquote ' 1 10 0 0 0
par_command_len_shellquote ' 2 1 1 2 12
par_command_len_shellquote ' 2 2 1 2 30
par_command_len_shellquote ' 2 3 1 2 84
par_command_len_shellquote ' 2 4 1 2 246
par_command_len_shellquote ' 2 5 1 2 732
par_command_len_shellquote ' 2 6 1 2 2190
par_command_len_shellquote ' 2 7 1 2 6564
par_command_len_shellquote ' 2 8 0 0 0
par_command_len_shellquote ' 2 9 0 0 0
par_command_len_shellquote ' 2 10 0 0 0
par_command_len_shellquote ' 3 1 1 2 18
par_command_len_shellquote ' 3 2 1 2 48
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 8 0 0 0
par_command_len_shellquote ' 3 9 0 0 0
par_command_len_shellquote ' 3 10 0 0 0
par_command_len_shellquote ' 4 1 1 2 24
par_command_len_shellquote ' 4 2 1 2 66
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 8 0 0 0
par_command_len_shellquote ' 4 9 0 0 0
par_command_len_shellquote ' 4 10 0 0 0
par_command_len_shellquote ' 5 1 1 2 30
par_command_len_shellquote ' 5 2 1 2 84
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 8 0 0 0
par_command_len_shellquote ' 5 9 0 0 0
par_command_len_shellquote ' 5 10 0 0 0
par_command_len_shellquote ' 6 1 1 2 36
par_command_len_shellquote ' 6 2 1 2 102
par_command_len_shellquote ' 6 3 1 2 300
par_command_len_shellquote ' 6 4 1 2 894
par_command_len_shellquote ' 6 5 1 2 2676
par_command_len_shellquote ' 6 6 1 2 8022
par_command_len_shellquote ' 6 7 0 0 0
par_command_len_shellquote ' 6 8 0 0 0
par_command_len_shellquote ' 6 9 0 0 0
par_command_len_shellquote ' 6 10 0 0 0
par_command_len_shellquote ' 7 1 1 2 42
par_command_len_shellquote ' 7 2 1 2 120
par_command_len_shellquote ' 7 3 1 2 354
par_command_len_shellquote ' 7 4 1 2 1056
par_command_len_shellquote ' 7 5 1 2 3162
par_command_len_shellquote ' 7 6 1 2 9480
par_command_len_shellquote ' 7 7 0 0 0
par_command_len_shellquote ' 7 8 0 0 0
par_command_len_shellquote ' 7 9 0 0 0
par_command_len_shellquote ' 7 10 0 0 0
par_command_len_shellquote ' 8 1 1 2 48
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 7 0 0 0
par_command_len_shellquote ' 8 8 0 0 0
par_command_len_shellquote ' 8 9 0 0 0
par_command_len_shellquote ' 8 10 0 0 0
par_command_len_shellquote ' 9 1 1 2 54
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 7 0 0 0
par_command_len_shellquote ' 9 8 0 0 0
par_command_len_shellquote ' 9 9 0 0 0
par_command_len_shellquote ' 9 10 0 0 0
par_command_len_shellquote ' 10 1 1 2 60
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 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 >= 131049) at input 0: "
par_command_len_shellquote " 1 10 parallel: Error: Command line too long (590490 >= 131049) at input 0: "
par_command_len_shellquote " 2 8 parallel: Error: Command line too long (131220 >= 131049) at input 0: ""
par_command_len_shellquote " 2 9 parallel: Error: Command line too long (393660 >= 131049) at input 0: ""
par_command_len_shellquote " 2 10 parallel: Error: Command line too long (1180980 >= 131049) at input 0: ""
par_command_len_shellquote " 3 8 parallel: Error: Command line too long (196830 >= 131049) at input 0: """
par_command_len_shellquote " 3 9 parallel: Error: Command line too long (590490 >= 131049) at input 0: """
par_command_len_shellquote " 3 10 parallel: Error: Command line too long (1771470 >= 131049) at input 0: """
par_command_len_shellquote " 4 8 parallel: Error: Command line too long (262440 >= 131049) at input 0: """"
par_command_len_shellquote " 4 9 parallel: Error: Command line too long (787320 >= 131049) at input 0: """"
par_command_len_shellquote " 4 10 parallel: Error: Command line too long (2361960 >= 131049) at input 0: """"
par_command_len_shellquote " 5 8 parallel: Error: Command line too long (328050 >= 131049) at input 0: """""
par_command_len_shellquote " 5 9 parallel: Error: Command line too long (984150 >= 131049) at input 0: """""
par_command_len_shellquote " 5 10 parallel: Error: Command line too long (2952450 >= 131049) at input 0: """""
par_command_len_shellquote " 6 7 parallel: Error: Command line too long (131220 >= 131049) at input 0: """"""
par_command_len_shellquote " 6 8 parallel: Error: Command line too long (393660 >= 131049) at input 0: """"""
par_command_len_shellquote " 6 9 parallel: Error: Command line too long (1180980 >= 131049) at input 0: """"""
par_command_len_shellquote " 6 10 parallel: Error: Command line too long (3542940 >= 131049) at input 0: """"""
par_command_len_shellquote " 7 7 parallel: Error: Command line too long (153090 >= 131049) at input 0: """""""
par_command_len_shellquote " 7 8 parallel: Error: Command line too long (459270 >= 131049) at input 0: """""""
par_command_len_shellquote " 7 9 parallel: Error: Command line too long (1377810 >= 131049) at input 0: """""""
par_command_len_shellquote " 7 10 parallel: Error: Command line too long (4133430 >= 131049) at input 0: """""""
par_command_len_shellquote " 8 7 parallel: Error: Command line too long (174960 >= 131049) at input 0: """"""""
par_command_len_shellquote " 8 8 parallel: Error: Command line too long (524880 >= 131049) at input 0: """"""""
par_command_len_shellquote " 8 9 parallel: Error: Command line too long (1574640 >= 131049) at input 0: """"""""
par_command_len_shellquote " 8 10 parallel: Error: Command line too long (4723920 >= 131049) at input 0: """"""""
par_command_len_shellquote " 9 7 parallel: Error: Command line too long (196830 >= 131049) at input 0: """""""""
par_command_len_shellquote " 9 8 parallel: Error: Command line too long (590490 >= 131049) at input 0: """""""""
par_command_len_shellquote " 9 9 parallel: Error: Command line too long (1771470 >= 131049) at input 0: """""""""
par_command_len_shellquote " 9 10 parallel: Error: Command line too long (5314410 >= 131049) at input 0: """""""""
par_command_len_shellquote " 10 7 parallel: Error: Command line too long (218700 >= 131049) at input 0: """"""""""
par_command_len_shellquote " 10 8 parallel: Error: Command line too long (656100 >= 131049) at input 0: """"""""""
par_command_len_shellquote " 10 9 parallel: Error: Command line too long (1968300 >= 131049) at input 0: """"""""""
par_command_len_shellquote " 10 10 parallel: Error: Command line too long (5904900 >= 131049) at input 0: """"""""""
par_command_len_shellquote ' 1 9 parallel: Error: Command line too long (196830 >= 131049) at input 0: '
par_command_len_shellquote ' 1 10 parallel: Error: Command line too long (590490 >= 131049) at input 0: '
par_command_len_shellquote ' 2 8 parallel: Error: Command line too long (131220 >= 131049) at input 0: ''
par_command_len_shellquote ' 2 9 parallel: Error: Command line too long (393660 >= 131049) at input 0: ''
par_command_len_shellquote ' 2 10 parallel: Error: Command line too long (1180980 >= 131049) at input 0: ''
par_command_len_shellquote ' 3 8 parallel: Error: Command line too long (196830 >= 131049) at input 0: '''
par_command_len_shellquote ' 3 9 parallel: Error: Command line too long (590490 >= 131049) at input 0: '''
par_command_len_shellquote ' 3 10 parallel: Error: Command line too long (1771470 >= 131049) at input 0: '''
par_command_len_shellquote ' 4 8 parallel: Error: Command line too long (262440 >= 131049) at input 0: ''''
par_command_len_shellquote ' 4 9 parallel: Error: Command line too long (787320 >= 131049) at input 0: ''''
par_command_len_shellquote ' 4 10 parallel: Error: Command line too long (2361960 >= 131049) at input 0: ''''
par_command_len_shellquote ' 5 8 parallel: Error: Command line too long (328050 >= 131049) at input 0: '''''
par_command_len_shellquote ' 5 9 parallel: Error: Command line too long (984150 >= 131049) at input 0: '''''
par_command_len_shellquote ' 5 10 parallel: Error: Command line too long (2952450 >= 131049) at input 0: '''''
par_command_len_shellquote ' 6 7 parallel: Error: Command line too long (131220 >= 131049) at input 0: ''''''
par_command_len_shellquote ' 6 8 parallel: Error: Command line too long (393660 >= 131049) at input 0: ''''''
par_command_len_shellquote ' 6 9 parallel: Error: Command line too long (1180980 >= 131049) at input 0: ''''''
par_command_len_shellquote ' 6 10 parallel: Error: Command line too long (3542940 >= 131049) at input 0: ''''''
par_command_len_shellquote ' 7 7 parallel: Error: Command line too long (153090 >= 131049) at input 0: '''''''
par_command_len_shellquote ' 7 8 parallel: Error: Command line too long (459270 >= 131049) at input 0: '''''''
par_command_len_shellquote ' 7 9 parallel: Error: Command line too long (1377810 >= 131049) at input 0: '''''''
par_command_len_shellquote ' 7 10 parallel: Error: Command line too long (4133430 >= 131049) at input 0: '''''''
par_command_len_shellquote ' 8 7 parallel: Error: Command line too long (174960 >= 131049) at input 0: ''''''''
par_command_len_shellquote ' 8 8 parallel: Error: Command line too long (524880 >= 131049) at input 0: ''''''''
par_command_len_shellquote ' 8 9 parallel: Error: Command line too long (1574640 >= 131049) at input 0: ''''''''
par_command_len_shellquote ' 8 10 parallel: Error: Command line too long (4723920 >= 131049) at input 0: ''''''''
par_command_len_shellquote ' 9 7 parallel: Error: Command line too long (196830 >= 131049) at input 0: '''''''''
par_command_len_shellquote ' 9 8 parallel: Error: Command line too long (590490 >= 131049) at input 0: '''''''''
par_command_len_shellquote ' 9 9 parallel: Error: Command line too long (1771470 >= 131049) at input 0: '''''''''
par_command_len_shellquote ' 9 10 parallel: Error: Command line too long (5314410 >= 131049) at input 0: '''''''''
par_command_len_shellquote ' 10 7 parallel: Error: Command line too long (218700 >= 131049) at input 0: ''''''''''
par_command_len_shellquote ' 10 8 parallel: Error: Command line too long (656100 >= 131049) at input 0: ''''''''''
par_command_len_shellquote ' 10 9 parallel: Error: Command line too long (1968300 >= 131049) at input 0: ''''''''''
par_command_len_shellquote ' 10 10 parallel: Error: Command line too long (5904900 >= 131049) at input 0: ''''''''''
par_basefile_cleanup ### bug #46520: --basefile cleans up without --cleanup par_basefile_cleanup ### bug #46520: --basefile cleans up without --cleanup
par_basefile_cleanup bug_46520 par_basefile_cleanup bug_46520
par_basefile_cleanup bug_46520 par_basefile_cleanup bug_46520

View file

@ -1196,9 +1196,9 @@ par_ksh_man work,
par_ksh_man too par_ksh_man too
par_ksh_man This may never work par_ksh_man This may never work
par_ksh_man https://unix.stackexchange.com/questions/457031/extract-full-function-definitions par_ksh_man https://unix.stackexchange.com/questions/457031/extract-full-function-definitions
par_ksh_man /usr/bin/ksh: line XXX: syntax error at line XXX: `{' unmatched par_ksh_man /usr/bin/ksh: line XXX: syntax error at line XXX: `(' unexpected
par_ksh_man /usr/bin/ksh: line XXX: syntax error at line XXX: `{' unmatched par_ksh_man /usr/bin/ksh: line XXX: syntax error at line XXX: `(' unexpected
par_ksh_man /usr/bin/ksh: line XXX: syntax error at line XXX: `{' unmatched par_ksh_man /usr/bin/ksh: line XXX: syntax error at line XXX: `(' unexpected
par_ksh_man exit value 2 should be 2 par_ksh_man exit value 2 should be 2
par_ksh_man Unknown option: no-such-option par_ksh_man Unknown option: no-such-option
par_ksh_man exit value 255 should be 255 par_ksh_man exit value 255 should be 255
@ -1438,16 +1438,16 @@ par_fish_underscore aliases functions work
par_fish_underscore aliases functions work par_fish_underscore aliases functions work
par_fish_underscore myecho $myarray functions $argv par_fish_underscore myecho $myarray functions $argv
par_fish_underscore ^ par_fish_underscore ^
par_fish_underscore in function “myfunc” par_fish_underscore in function 'myfunc'
par_fish_underscore called on standard input par_fish_underscore called on standard input
par_fish_underscore with parameter list “work” par_fish_underscore with parameter list 'work'
par_fish_underscore par_fish_underscore
par_fish_underscore OK if ^^^^^^^^^^^^^^^^^ no myecho par_fish_underscore OK if ^^^^^^^^^^^^^^^^^ no myecho
par_fish_underscore myecho $myarray functions $argv par_fish_underscore myecho $myarray functions $argv
par_fish_underscore ^ par_fish_underscore ^
par_fish_underscore in function “myfunc” par_fish_underscore in function 'myfunc'
par_fish_underscore called on standard input par_fish_underscore called on standard input
par_fish_underscore with parameter list “work” par_fish_underscore with parameter list 'work'
par_fish_underscore par_fish_underscore
par_fish_underscore OK if ^^^^^^^^^^^^^^^^^ no myecho par_fish_underscore OK if ^^^^^^^^^^^^^^^^^ no myecho
par_fish_underscore myfunc work par_fish_underscore myfunc work
@ -1901,16 +1901,16 @@ par_csh_funky 3 arg alias_works
par_csh_funky par_csh_funky
par_csh_funky myvar works par_csh_funky myvar works
par_csh_funky space special chars problem par_csh_funky space special chars problem
par_csh_funky Funky-  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€Â‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×ØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ-funky alias_var_works par_csh_funky Funky-  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€亗儎厗噲墛媽崕彁憭摂晼棙櫄洔潪煚、¥ウЖ┆<EFBFBD><EFBFBD><EFBFBD>辈炒刀犯购患骄坷谅媚牌侨墒颂臀闲岩釉罩棕仝圮蒉哙徕沅彐玷殛腱眍镳耱篝貊鼬<EFBFBD><EFBFBD><EFBFBD><EFBFBD>-funky alias_var_works
par_csh_funky func_echo: Command not found. par_csh_funky func_echo: Command not found.
par_csh_funky 3 arg alias_works_over_ssh par_csh_funky 3 arg alias_works_over_ssh
par_csh_funky par_csh_funky
par_csh_funky myvar works par_csh_funky myvar works
par_csh_funky space special chars problem par_csh_funky space special chars problem
par_csh_funky Funky-  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€Â‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×ØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ-funky alias_var_works_over_ssh par_csh_funky Funky-  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€亗儎厗噲墛媽崕彁憭摂晼棙櫄洔潪煚、¥ウЖ┆<EFBFBD><EFBFBD><EFBFBD>辈炒刀犯购患骄坷谅媚牌侨墒颂臀闲岩釉罩棕仝圮蒉哙徕沅彐玷殛腱眍镳耱篝貊鼬<EFBFBD><EFBFBD><EFBFBD><EFBFBD>-funky alias_var_works_over_ssh
par_csh_funky func_echo: Command not found. par_csh_funky func_echo: Command not found.
par_csh_funky par_csh_funky
par_csh_funky \\\\\\\\ \ \ \ \ \\\\\\\\\\\\\\ \!\"\#\$%\&\'\(\)\*+,-./0123456789:\;\<\=\>\?@ABCDEFGHIJKLMNOPQRSTUVWXYZ\[\\\]\^_\`abcdefghijklmnopqrstuvwxyz\{\|\}\~\€\\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\À\Á\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<EFBFBD> par_csh_funky \\\\\\\\ \ \ \ \ \\\\\\\\\\\\\\ \!\"\#\$%\&\'\(\)\*+,-./0123456789:\;\<\=\>\?@ABCDEFGHIJKLMNOPQRSTUVWXYZ\[\\\]\^_\`abcdefghijklmnopqrstuvwxyz\{\|\}\~€乗俓僜刓匼哱嘰圽塡奬媆孿峔嶾廫怽慭抃揬擻昞朶梊榎橽歕沑淺漒瀄焅燶<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>猏玕琝璡甛痋癨盶瞈砛碶礬禱穃竆筡篭籠糪絓綷縗繺羂耚肻腬臷芢荺萛蒤蔦薥蘚蚛蝄蟎衆裓襖覾診誠謀譢豛賊赲踈躙輁轡運郳醆鈂鉢鋅錦鎈鏫鑌閈闬隲靄韁頫颸餦馶騖骪鬨鮘鯸鱘鳿鵟鶿鸤黒齖㘎<EFBFBD>
par_csh_environment_too_big Not implemented par_csh_environment_too_big Not implemented
par_csh_env_parallel_session Not implemented par_csh_env_parallel_session Not implemented
par_csh_env_parallel bug #50435: Remote fifo broke in 20150522 par_csh_env_parallel bug #50435: Remote fifo broke in 20150522

View file

@ -23,11 +23,12 @@ par_path_remote_bash /bin:/usr/bin:/tmp OK
par_path_remote_bash par_path_remote_bash
par_path_remote_csh bug #47695: How to set $PATH on remote? csh par_path_remote_csh bug #47695: How to set $PATH on remote? csh
par_path_remote_csh logged in par_path_remote_csh logged in
par_path_remote_csh CSH Path before: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games with no parallel par_path_remote_csh CSH Path before: /bin:/usr/bin with no parallel
par_path_remote_csh /usr/local/bin/parallel par_path_remote_csh parallel: Command not found.
par_path_remote_csh ^^^^^^^^ Not found is OK par_path_remote_csh ^^^^^^^^ Not found is OK
par_path_remote_csh /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/tmp OK par_path_remote_csh parallel: Warning: Removed lo.
par_path_remote_csh Right now it seems csh does not respect /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/tmp if set from Perl par_path_remote_csh parallel: Error: Cannot run any jobs.
par_path_remote_csh Right now it seems csh does not respect /bin:/usr/bin:/tmp if set from Perl
par_path_remote_csh Done par_path_remote_csh Done
par_retries_1 ### Test of --retries - it should run 13 jobs in total par_retries_1 ### Test of --retries - it should run 13 jobs in total
par_retries_1 13 par_retries_1 13

View file

@ -39,7 +39,7 @@ https://www.gnu.org/software/parallel/parallel_design.html#Citation-notice
To silence this citation notice: run 'parallel --citation' once. To silence this citation notice: run 'parallel --citation' once.
10 files to edit 10 files to edit
[?2004h[?1049h[?1h=[?2004h[?12h[?12l[?25l"file1" [New File]~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ [?25h[?25lE173: 9 more files to edit[?2004h[?25h[?2004l[?2004l[?1l>[?1049lAcademic tradition requires you to cite works you base your article on. [?2004h[?1049h[?1h=[?2004h[?12h[?12l[?25l"file1" [New File] [>c]10;?]11;?~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ 0,0-1All[?25h[?25lE173: 9 more files to edit[?2004h0,0-1All[?25h[?2004l[?2004l[?1l>[?1049lAcademic tradition requires you to cite works you base your article on.
If you use programs that use GNU Parallel to process data for an article in a If you use programs that use GNU Parallel to process data for an article in a
scientific publication, please cite: scientific publication, please cite:

View file

@ -7,8 +7,6 @@ par_env_newline_backslash_bash 8
par_env_newline_backslash_csh ### Test --env for \n and \\ - single and double (*csh only) - no output is good but csh fails par_env_newline_backslash_csh ### Test --env for \n and \\ - single and double (*csh only) - no output is good but csh fails
par_env_newline_backslash_csh 2 2\ \92V2=\ \92 par_env_newline_backslash_csh 2 2\ \92V2=\ \92
par_env_newline_backslash_csh 2 2\\ \92V2=\\ \92 par_env_newline_backslash_csh 2 2\\ \92V2=\\ \92
par_env_newline_backslash_csh 2 Unmatched ".
par_env_newline_backslash_csh 2 Unmatched '"'.
par_env_newline_backslash_onall_bash ### Test --env for \n and \\ - single and double --onall (bash only) - no output is good par_env_newline_backslash_onall_bash ### Test --env for \n and \\ - single and double --onall (bash only) - no output is good
par_env_newline_backslash_onall_bash 16 par_env_newline_backslash_onall_bash 16
par_env_newline_backslash_onall_bash 16 par_env_newline_backslash_onall_bash 16
@ -17,6 +15,7 @@ par_env_newline_backslash_onall_bash 8 10
par_env_newline_backslash_onall_bash 8 10V2= par_env_newline_backslash_onall_bash 8 10V2=
par_env_newline_backslash_onall_bash 8 2\\ \92V2=\\ \92 par_env_newline_backslash_onall_bash 8 2\\ \92V2=\\ \92
par_env_newline_backslash_onall_csh ### Test --env for \n and \\ - single and double --onall (*csh only) - no output is good but csh fails par_env_newline_backslash_onall_csh ### Test --env for \n and \\ - single and double --onall (*csh only) - no output is good but csh fails
par_env_newline_backslash_onall_csh 8 Unmatched '"'.
par_space ### Test --env - https://savannah.gnu.org/bugs/?37351 par_space ### Test --env - https://savannah.gnu.org/bugs/?37351
par_space a 2 spaces b 1 par_space a 2 spaces b 1
par_space a 2 spaces b 1 par_space a 2 spaces b 1

View file

@ -61,7 +61,7 @@ echo '### Check that 4 processes are really used'
echo '### --version must have higher priority than retired options' echo '### --version must have higher priority than retired options'
### --version must have higher priority than retired options ### --version must have higher priority than retired options
$NICEPAR --version -g -Y -U -W -T | tail $NICEPAR --version -g -Y -U -W -T | tail
GNU parallel 20181223 GNU parallel 20190123
Copyright (C) 2007-2019 Ole Tange and Free Software Foundation, Inc. Copyright (C) 2007-2019 Ole Tange and Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it. This is free software: you are free to change and redistribute it.

View file

@ -1,4 +1,4 @@
MAXTIME=50 RETRIES=3 MAXPROC=100 MAXINNERPROC=3 MAXTIME=50 RETRIES=3 MAXPROC=84 MAXINNERPROC=3
### Filter out working servers ### Filter out working servers
1d0 1d0
< openstep < openstep
@ -6,12 +6,12 @@ MAXTIME=50 RETRIES=3 MAXPROC=100 MAXINNERPROC=3
< alpha < alpha
7d4 7d4
< syllable < syllable
28,29d24 28,31d24
< dragonfly < dragonfly
< vax < vax
31d25 < ultrix
< minix < minix
34,35d27 33,34d25
< beaglebone < beaglebone
< cubieboard2 < cubieboard2
### Copy commands to servers ### Copy commands to servers
@ -39,8 +39,6 @@ bin/parallel netbsd copy netbsd bin/parallel parallel
bin/parallel openbsd copy openbsd bin/parallel parallel bin/parallel openbsd copy openbsd bin/parallel parallel
bin/parallel freebsd copy freebsd bin/parallel parallel bin/parallel freebsd copy freebsd bin/parallel parallel
bin/parallel debian copy debian bin/parallel parallel bin/parallel debian copy debian bin/parallel parallel
bin/parallel ultrix copy ultrix bin/parallel parallel
bin/parallel irix copy irix bin/parallel parallel
bin/parallel hurd copy hurd bin/parallel parallel bin/parallel hurd copy hurd bin/parallel parallel
bin/parallel minix copy minix bin/parallel parallel bin/parallel minix copy minix bin/parallel parallel
bin/env_parallel qnx copy qnx bin/env_parallel env_parallel bin/env_parallel qnx copy qnx bin/env_parallel env_parallel
@ -67,8 +65,6 @@ bin/env_parallel netbsd copy netbsd bin/env_parallel env_parallel
bin/env_parallel openbsd copy openbsd bin/env_parallel env_parallel bin/env_parallel openbsd copy openbsd bin/env_parallel env_parallel
bin/env_parallel freebsd copy freebsd bin/env_parallel env_parallel bin/env_parallel freebsd copy freebsd bin/env_parallel env_parallel
bin/env_parallel debian copy debian bin/env_parallel env_parallel bin/env_parallel debian copy debian bin/env_parallel env_parallel
bin/env_parallel ultrix copy ultrix bin/env_parallel env_parallel
bin/env_parallel irix copy irix bin/env_parallel env_parallel
bin/env_parallel hurd copy hurd bin/env_parallel env_parallel bin/env_parallel hurd copy hurd bin/env_parallel env_parallel
bin/env_parallel minix copy minix bin/env_parallel env_parallel bin/env_parallel minix copy minix bin/env_parallel env_parallel
bin/env_parallel.ash qnx copy qnx bin/env_parallel.ash env_parallel.ash bin/env_parallel.ash qnx copy qnx bin/env_parallel.ash env_parallel.ash
@ -95,8 +91,6 @@ bin/env_parallel.ash netbsd copy netbsd bin/env_parallel.ash env_parallel.ash
bin/env_parallel.ash openbsd copy openbsd bin/env_parallel.ash env_parallel.ash bin/env_parallel.ash openbsd copy openbsd bin/env_parallel.ash env_parallel.ash
bin/env_parallel.ash freebsd copy freebsd bin/env_parallel.ash env_parallel.ash bin/env_parallel.ash freebsd copy freebsd bin/env_parallel.ash env_parallel.ash
bin/env_parallel.ash debian copy debian bin/env_parallel.ash env_parallel.ash bin/env_parallel.ash debian copy debian bin/env_parallel.ash env_parallel.ash
bin/env_parallel.ash ultrix copy ultrix bin/env_parallel.ash env_parallel.ash
bin/env_parallel.ash irix copy irix bin/env_parallel.ash env_parallel.ash
bin/env_parallel.ash hurd copy hurd bin/env_parallel.ash env_parallel.ash bin/env_parallel.ash hurd copy hurd bin/env_parallel.ash env_parallel.ash
bin/env_parallel.ash minix copy minix bin/env_parallel.ash env_parallel.ash bin/env_parallel.ash minix copy minix bin/env_parallel.ash env_parallel.ash
bin/env_parallel.bash qnx copy qnx bin/env_parallel.bash env_parallel.bash bin/env_parallel.bash qnx copy qnx bin/env_parallel.bash env_parallel.bash
@ -123,8 +117,6 @@ bin/env_parallel.bash netbsd copy netbsd bin/env_parallel.bash env_parallel.bash
bin/env_parallel.bash openbsd copy openbsd bin/env_parallel.bash env_parallel.bash bin/env_parallel.bash openbsd copy openbsd bin/env_parallel.bash env_parallel.bash
bin/env_parallel.bash freebsd copy freebsd bin/env_parallel.bash env_parallel.bash bin/env_parallel.bash freebsd copy freebsd bin/env_parallel.bash env_parallel.bash
bin/env_parallel.bash debian copy debian bin/env_parallel.bash env_parallel.bash bin/env_parallel.bash debian copy debian bin/env_parallel.bash env_parallel.bash
bin/env_parallel.bash ultrix copy ultrix bin/env_parallel.bash env_parallel.bash
bin/env_parallel.bash irix copy irix bin/env_parallel.bash env_parallel.bash
bin/env_parallel.bash hurd copy hurd bin/env_parallel.bash env_parallel.bash bin/env_parallel.bash hurd copy hurd bin/env_parallel.bash env_parallel.bash
bin/env_parallel.bash minix copy minix bin/env_parallel.bash env_parallel.bash bin/env_parallel.bash minix copy minix bin/env_parallel.bash env_parallel.bash
bin/env_parallel.csh qnx copy qnx bin/env_parallel.csh env_parallel.csh bin/env_parallel.csh qnx copy qnx bin/env_parallel.csh env_parallel.csh
@ -151,8 +143,6 @@ bin/env_parallel.csh netbsd copy netbsd bin/env_parallel.csh env_parallel.csh
bin/env_parallel.csh openbsd copy openbsd bin/env_parallel.csh env_parallel.csh bin/env_parallel.csh openbsd copy openbsd bin/env_parallel.csh env_parallel.csh
bin/env_parallel.csh freebsd copy freebsd bin/env_parallel.csh env_parallel.csh bin/env_parallel.csh freebsd copy freebsd bin/env_parallel.csh env_parallel.csh
bin/env_parallel.csh debian copy debian bin/env_parallel.csh env_parallel.csh bin/env_parallel.csh debian copy debian bin/env_parallel.csh env_parallel.csh
bin/env_parallel.csh ultrix copy ultrix bin/env_parallel.csh env_parallel.csh
bin/env_parallel.csh irix copy irix bin/env_parallel.csh env_parallel.csh
bin/env_parallel.csh hurd copy hurd bin/env_parallel.csh env_parallel.csh bin/env_parallel.csh hurd copy hurd bin/env_parallel.csh env_parallel.csh
bin/env_parallel.csh minix copy minix bin/env_parallel.csh env_parallel.csh bin/env_parallel.csh minix copy minix bin/env_parallel.csh env_parallel.csh
bin/env_parallel.dash qnx copy qnx bin/env_parallel.dash env_parallel.dash bin/env_parallel.dash qnx copy qnx bin/env_parallel.dash env_parallel.dash
@ -179,8 +169,6 @@ bin/env_parallel.dash netbsd copy netbsd bin/env_parallel.dash env_parallel.dash
bin/env_parallel.dash openbsd copy openbsd bin/env_parallel.dash env_parallel.dash bin/env_parallel.dash openbsd copy openbsd bin/env_parallel.dash env_parallel.dash
bin/env_parallel.dash freebsd copy freebsd bin/env_parallel.dash env_parallel.dash bin/env_parallel.dash freebsd copy freebsd bin/env_parallel.dash env_parallel.dash
bin/env_parallel.dash debian copy debian bin/env_parallel.dash env_parallel.dash bin/env_parallel.dash debian copy debian bin/env_parallel.dash env_parallel.dash
bin/env_parallel.dash ultrix copy ultrix bin/env_parallel.dash env_parallel.dash
bin/env_parallel.dash irix copy irix bin/env_parallel.dash env_parallel.dash
bin/env_parallel.dash hurd copy hurd bin/env_parallel.dash env_parallel.dash bin/env_parallel.dash hurd copy hurd bin/env_parallel.dash env_parallel.dash
bin/env_parallel.dash minix copy minix bin/env_parallel.dash env_parallel.dash bin/env_parallel.dash minix copy minix bin/env_parallel.dash env_parallel.dash
bin/env_parallel.fish qnx copy qnx bin/env_parallel.fish env_parallel.fish bin/env_parallel.fish qnx copy qnx bin/env_parallel.fish env_parallel.fish
@ -207,8 +195,6 @@ bin/env_parallel.fish netbsd copy netbsd bin/env_parallel.fish env_parallel.fish
bin/env_parallel.fish openbsd copy openbsd bin/env_parallel.fish env_parallel.fish bin/env_parallel.fish openbsd copy openbsd bin/env_parallel.fish env_parallel.fish
bin/env_parallel.fish freebsd copy freebsd bin/env_parallel.fish env_parallel.fish bin/env_parallel.fish freebsd copy freebsd bin/env_parallel.fish env_parallel.fish
bin/env_parallel.fish debian copy debian bin/env_parallel.fish env_parallel.fish bin/env_parallel.fish debian copy debian bin/env_parallel.fish env_parallel.fish
bin/env_parallel.fish ultrix copy ultrix bin/env_parallel.fish env_parallel.fish
bin/env_parallel.fish irix copy irix bin/env_parallel.fish env_parallel.fish
bin/env_parallel.fish hurd copy hurd bin/env_parallel.fish env_parallel.fish bin/env_parallel.fish hurd copy hurd bin/env_parallel.fish env_parallel.fish
bin/env_parallel.fish minix copy minix bin/env_parallel.fish env_parallel.fish bin/env_parallel.fish minix copy minix bin/env_parallel.fish env_parallel.fish
bin/env_parallel.ksh qnx copy qnx bin/env_parallel.ksh env_parallel.ksh bin/env_parallel.ksh qnx copy qnx bin/env_parallel.ksh env_parallel.ksh
@ -235,8 +221,6 @@ bin/env_parallel.ksh netbsd copy netbsd bin/env_parallel.ksh env_parallel.ksh
bin/env_parallel.ksh openbsd copy openbsd bin/env_parallel.ksh env_parallel.ksh bin/env_parallel.ksh openbsd copy openbsd bin/env_parallel.ksh env_parallel.ksh
bin/env_parallel.ksh freebsd copy freebsd bin/env_parallel.ksh env_parallel.ksh bin/env_parallel.ksh freebsd copy freebsd bin/env_parallel.ksh env_parallel.ksh
bin/env_parallel.ksh debian copy debian bin/env_parallel.ksh env_parallel.ksh bin/env_parallel.ksh debian copy debian bin/env_parallel.ksh env_parallel.ksh
bin/env_parallel.ksh ultrix copy ultrix bin/env_parallel.ksh env_parallel.ksh
bin/env_parallel.ksh irix copy irix bin/env_parallel.ksh env_parallel.ksh
bin/env_parallel.ksh hurd copy hurd bin/env_parallel.ksh env_parallel.ksh bin/env_parallel.ksh hurd copy hurd bin/env_parallel.ksh env_parallel.ksh
bin/env_parallel.ksh minix copy minix bin/env_parallel.ksh env_parallel.ksh bin/env_parallel.ksh minix copy minix bin/env_parallel.ksh env_parallel.ksh
bin/env_parallel.mksh qnx copy qnx bin/env_parallel.mksh env_parallel.mksh bin/env_parallel.mksh qnx copy qnx bin/env_parallel.mksh env_parallel.mksh
@ -263,8 +247,6 @@ bin/env_parallel.mksh netbsd copy netbsd bin/env_parallel.mksh env_parallel.mksh
bin/env_parallel.mksh openbsd copy openbsd bin/env_parallel.mksh env_parallel.mksh bin/env_parallel.mksh openbsd copy openbsd bin/env_parallel.mksh env_parallel.mksh
bin/env_parallel.mksh freebsd copy freebsd bin/env_parallel.mksh env_parallel.mksh bin/env_parallel.mksh freebsd copy freebsd bin/env_parallel.mksh env_parallel.mksh
bin/env_parallel.mksh debian copy debian bin/env_parallel.mksh env_parallel.mksh bin/env_parallel.mksh debian copy debian bin/env_parallel.mksh env_parallel.mksh
bin/env_parallel.mksh ultrix copy ultrix bin/env_parallel.mksh env_parallel.mksh
bin/env_parallel.mksh irix copy irix bin/env_parallel.mksh env_parallel.mksh
bin/env_parallel.mksh hurd copy hurd bin/env_parallel.mksh env_parallel.mksh bin/env_parallel.mksh hurd copy hurd bin/env_parallel.mksh env_parallel.mksh
bin/env_parallel.mksh minix copy minix bin/env_parallel.mksh env_parallel.mksh bin/env_parallel.mksh minix copy minix bin/env_parallel.mksh env_parallel.mksh
bin/env_parallel.pdksh qnx copy qnx bin/env_parallel.pdksh env_parallel.pdksh bin/env_parallel.pdksh qnx copy qnx bin/env_parallel.pdksh env_parallel.pdksh
@ -291,8 +273,6 @@ bin/env_parallel.pdksh netbsd copy netbsd bin/env_parallel.pdksh env_parallel.pd
bin/env_parallel.pdksh openbsd copy openbsd bin/env_parallel.pdksh env_parallel.pdksh bin/env_parallel.pdksh openbsd copy openbsd bin/env_parallel.pdksh env_parallel.pdksh
bin/env_parallel.pdksh freebsd copy freebsd bin/env_parallel.pdksh env_parallel.pdksh bin/env_parallel.pdksh freebsd copy freebsd bin/env_parallel.pdksh env_parallel.pdksh
bin/env_parallel.pdksh debian copy debian bin/env_parallel.pdksh env_parallel.pdksh bin/env_parallel.pdksh debian copy debian bin/env_parallel.pdksh env_parallel.pdksh
bin/env_parallel.pdksh ultrix copy ultrix bin/env_parallel.pdksh env_parallel.pdksh
bin/env_parallel.pdksh irix copy irix bin/env_parallel.pdksh env_parallel.pdksh
bin/env_parallel.pdksh hurd copy hurd bin/env_parallel.pdksh env_parallel.pdksh bin/env_parallel.pdksh hurd copy hurd bin/env_parallel.pdksh env_parallel.pdksh
bin/env_parallel.pdksh minix copy minix bin/env_parallel.pdksh env_parallel.pdksh bin/env_parallel.pdksh minix copy minix bin/env_parallel.pdksh env_parallel.pdksh
bin/env_parallel.sh qnx copy qnx bin/env_parallel.sh env_parallel.sh bin/env_parallel.sh qnx copy qnx bin/env_parallel.sh env_parallel.sh
@ -319,8 +299,6 @@ bin/env_parallel.sh netbsd copy netbsd bin/env_parallel.sh env_parallel.sh
bin/env_parallel.sh openbsd copy openbsd bin/env_parallel.sh env_parallel.sh bin/env_parallel.sh openbsd copy openbsd bin/env_parallel.sh env_parallel.sh
bin/env_parallel.sh freebsd copy freebsd bin/env_parallel.sh env_parallel.sh bin/env_parallel.sh freebsd copy freebsd bin/env_parallel.sh env_parallel.sh
bin/env_parallel.sh debian copy debian bin/env_parallel.sh env_parallel.sh bin/env_parallel.sh debian copy debian bin/env_parallel.sh env_parallel.sh
bin/env_parallel.sh ultrix copy ultrix bin/env_parallel.sh env_parallel.sh
bin/env_parallel.sh irix copy irix bin/env_parallel.sh env_parallel.sh
bin/env_parallel.sh hurd copy hurd bin/env_parallel.sh env_parallel.sh bin/env_parallel.sh hurd copy hurd bin/env_parallel.sh env_parallel.sh
bin/env_parallel.sh minix copy minix bin/env_parallel.sh env_parallel.sh bin/env_parallel.sh minix copy minix bin/env_parallel.sh env_parallel.sh
bin/env_parallel.tcsh qnx copy qnx bin/env_parallel.tcsh env_parallel.tcsh bin/env_parallel.tcsh qnx copy qnx bin/env_parallel.tcsh env_parallel.tcsh
@ -347,8 +325,6 @@ bin/env_parallel.tcsh netbsd copy netbsd bin/env_parallel.tcsh env_parallel.tcsh
bin/env_parallel.tcsh openbsd copy openbsd bin/env_parallel.tcsh env_parallel.tcsh bin/env_parallel.tcsh openbsd copy openbsd bin/env_parallel.tcsh env_parallel.tcsh
bin/env_parallel.tcsh freebsd copy freebsd bin/env_parallel.tcsh env_parallel.tcsh bin/env_parallel.tcsh freebsd copy freebsd bin/env_parallel.tcsh env_parallel.tcsh
bin/env_parallel.tcsh debian copy debian bin/env_parallel.tcsh env_parallel.tcsh bin/env_parallel.tcsh debian copy debian bin/env_parallel.tcsh env_parallel.tcsh
bin/env_parallel.tcsh ultrix copy ultrix bin/env_parallel.tcsh env_parallel.tcsh
bin/env_parallel.tcsh irix copy irix bin/env_parallel.tcsh env_parallel.tcsh
bin/env_parallel.tcsh hurd copy hurd bin/env_parallel.tcsh env_parallel.tcsh bin/env_parallel.tcsh hurd copy hurd bin/env_parallel.tcsh env_parallel.tcsh
bin/env_parallel.tcsh minix copy minix bin/env_parallel.tcsh env_parallel.tcsh bin/env_parallel.tcsh minix copy minix bin/env_parallel.tcsh env_parallel.tcsh
bin/env_parallel.zsh qnx copy qnx bin/env_parallel.zsh env_parallel.zsh bin/env_parallel.zsh qnx copy qnx bin/env_parallel.zsh env_parallel.zsh
@ -375,8 +351,6 @@ bin/env_parallel.zsh netbsd copy netbsd bin/env_parallel.zsh env_parallel.zsh
bin/env_parallel.zsh openbsd copy openbsd bin/env_parallel.zsh env_parallel.zsh bin/env_parallel.zsh openbsd copy openbsd bin/env_parallel.zsh env_parallel.zsh
bin/env_parallel.zsh freebsd copy freebsd bin/env_parallel.zsh env_parallel.zsh bin/env_parallel.zsh freebsd copy freebsd bin/env_parallel.zsh env_parallel.zsh
bin/env_parallel.zsh debian copy debian bin/env_parallel.zsh env_parallel.zsh bin/env_parallel.zsh debian copy debian bin/env_parallel.zsh env_parallel.zsh
bin/env_parallel.zsh ultrix copy ultrix bin/env_parallel.zsh env_parallel.zsh
bin/env_parallel.zsh irix copy irix bin/env_parallel.zsh env_parallel.zsh
bin/env_parallel.zsh hurd copy hurd bin/env_parallel.zsh env_parallel.zsh bin/env_parallel.zsh hurd copy hurd bin/env_parallel.zsh env_parallel.zsh
bin/env_parallel.zsh minix copy minix bin/env_parallel.zsh env_parallel.zsh bin/env_parallel.zsh minix copy minix bin/env_parallel.zsh env_parallel.zsh
bin/parcat qnx copy qnx bin/parcat parcat bin/parcat qnx copy qnx bin/parcat parcat
@ -403,38 +377,8 @@ bin/parcat netbsd copy netbsd bin/parcat parcat
bin/parcat openbsd copy openbsd bin/parcat parcat bin/parcat openbsd copy openbsd bin/parcat parcat
bin/parcat freebsd copy freebsd bin/parcat parcat bin/parcat freebsd copy freebsd bin/parcat parcat
bin/parcat debian copy debian bin/parcat parcat bin/parcat debian copy debian bin/parcat parcat
bin/parcat ultrix copy ultrix bin/parcat parcat
bin/parcat irix copy irix bin/parcat parcat
bin/parcat hurd copy hurd bin/parcat parcat bin/parcat hurd copy hurd bin/parcat parcat
bin/parcat minix copy minix bin/parcat parcat bin/parcat minix copy minix bin/parcat parcat
bin/stdout qnx copy qnx bin/stdout stdout
bin/stdout pidora copy pidora bin/stdout stdout
bin/stdout tru64 copy tru64 bin/stdout stdout
bin/stdout hpux-ia64 copy hpux-ia64 bin/stdout stdout
bin/stdout raspbian copy raspbian bin/stdout stdout
bin/stdout solaris copy solaris bin/stdout stdout
bin/stdout openindiana copy openindiana bin/stdout stdout
bin/stdout aix copy aix bin/stdout stdout
bin/stdout hpux copy hpux bin/stdout stdout
bin/stdout debian-ppc copy debian-ppc bin/stdout stdout
bin/stdout suse copy suse bin/stdout stdout
bin/stdout solaris-x86 copy solaris-x86 bin/stdout stdout
bin/stdout mandriva copy mandriva bin/stdout stdout
bin/stdout ubuntu copy ubuntu bin/stdout stdout
bin/stdout scosysv copy scosysv bin/stdout stdout
bin/stdout unixware copy unixware bin/stdout stdout
bin/stdout centos copy centos bin/stdout stdout
bin/stdout miros copy miros bin/stdout stdout
bin/stdout macosx copy macosx bin/stdout stdout
bin/stdout redhat copy redhat bin/stdout stdout
bin/stdout netbsd copy netbsd bin/stdout stdout
bin/stdout openbsd copy openbsd bin/stdout stdout
bin/stdout freebsd copy freebsd bin/stdout stdout
bin/stdout debian copy debian bin/stdout stdout
bin/stdout ultrix copy ultrix bin/stdout stdout
bin/stdout irix copy irix bin/stdout stdout
bin/stdout hurd copy hurd bin/stdout stdout
bin/stdout minix copy minix bin/stdout stdout
Done copying Done copying
echo echo
@ -452,8 +396,6 @@ freebsd Syntax error: Bad fd number
hpux Works on hpux64 hpux Works on hpux64
hpux-ia64 Works on hpux-ia64 hpux-ia64 Works on hpux-ia64
hurd Works on hurd hurd Works on hurd
irix /usr/freeware/bin/bash: line 1: /home/t/tange/setupenv: No such file or directory
irix Unknown open() mode '>&' at /home/t/tange/bin/parallel line 2358.
macosx Works on macosx.polarhome.com macosx Works on macosx.polarhome.com
mandriva Works on mandriva.polarhome.com mandriva Works on mandriva.polarhome.com
miros Works on miros.polarhome.com miros Works on miros.polarhome.com
@ -498,9 +440,6 @@ hpux-ia64 1
hpux-ia64 1 hpux-ia64 1
hurd hurd
hurd 1 hurd 1
irix /usr/freeware/bin/bash: line 1: /home/t/tange/setupenv: No such file or directory
irix Unknown open() mode '>&' at /home/t/tange/bin/parallel line 2358.
irix Unknown open() mode '>&' at /home/t/tange/bin/parallel line 2358.
macosx 2 macosx 2
macosx 2 macosx 2
mandriva 1 mandriva 1
@ -556,9 +495,6 @@ hpux-ia64 2
hpux-ia64 1 hpux-ia64 1
hurd 1 hurd 1
hurd 1 hurd 1
irix /usr/freeware/bin/bash: line 1: /home/t/tange/setupenv: No such file or directory
irix Unknown open() mode '>&' at /home/t/tange/bin/parallel line 2358.
irix Unknown open() mode '>&' at /home/t/tange/bin/parallel line 2358.
macosx 2 macosx 2
macosx 2 macosx 2
mandriva 1 mandriva 1
@ -625,8 +561,6 @@ hpux-ia64 at /home/t/tange/bin/parallel line 0000
hpux-ia64 OK readonly tmp hpux-ia64 OK readonly tmp
hurd Error in tempfile() using template /XXXXXXXX.arg: Could not create temp file /XXXXXXXX.arg: Permission denied at /home/t/tange/bin/parallel line 0000. hurd Error in tempfile() using template /XXXXXXXX.arg: Could not create temp file /XXXXXXXX.arg: Permission denied at /home/t/tange/bin/parallel line 0000.
hurd OK readonly tmp hurd OK readonly tmp
irix Undefined subroutine &main::decode_base64 called at -e line 1.
irix open3: exec of bzip2 -dc failed at -e line 1
macosx Error in tempfile() using /XXXXXXXX.arg: Could not create temp file /XXXXXXXX.arg: Permission denied at /Users/tange/bin/parallel line 0000 macosx Error in tempfile() using /XXXXXXXX.arg: Could not create temp file /XXXXXXXX.arg: Permission denied at /Users/tange/bin/parallel line 0000
macosx OK readonly tmp macosx OK readonly tmp
mandriva Error in tempfile() using /XXXXXXXX.arg: Could not create temp file /XXXXXXXX.arg: Permission denied at /home/t/tange/bin/parallel line 0000 mandriva Error in tempfile() using /XXXXXXXX.arg: Could not create temp file /XXXXXXXX.arg: Permission denied at /home/t/tange/bin/parallel line 0000
@ -656,8 +590,9 @@ scosysv OK readonly tmp
solaris Error in tempfile() using /XXXXXXXX.arg: Parent directory (/) is not writable solaris Error in tempfile() using /XXXXXXXX.arg: Parent directory (/) is not writable
solaris at /home/t/tange/bin/parallel line 0000 solaris at /home/t/tange/bin/parallel line 0000
solaris OK readonly tmp solaris OK readonly tmp
solaris-x86 Error in tempfile() using /XXXXXXXX.arg: Could not create temp file /XXXXXXXX.arg: Permission denied at ~/bin/parallel line 0000 solaris-x86 Error in tempfile() using /XXXXXXXX.arg: Could not create temp file /XXXXXXXX.arg: Permission denied at /home/tange/bin/parallel line 0000
solaris-x86 OK readonly tmp solaris-x86 OK readonly tmp
sshwithpass minix OKreadonlytmp
suse Error in tempfile() using /XXXXXXXX.arg: Could not create temp file /XXXXXXXX.arg: Permission denied at /home/t/tange/bin/parallel line 0000. suse Error in tempfile() using /XXXXXXXX.arg: Could not create temp file /XXXXXXXX.arg: Permission denied at /home/t/tange/bin/parallel line 0000.
suse OK readonly tmp suse OK readonly tmp
tru64 Error in tempfile() using /XXXXXXXX.arg: Parent directory (/) is not writable tru64 Error in tempfile() using /XXXXXXXX.arg: Parent directory (/) is not writable
@ -665,9 +600,9 @@ tru64 at /home/t/tange/bin/parallel line 0000
tru64 OK readonly tmp tru64 OK readonly tmp
ubuntu Error in tempfile() using template /XXXXXXXX.arg: Could not create temp file /XXXXXXXX.arg: Permission denied at /home/t/tange/bin/parallel line 0000. ubuntu Error in tempfile() using template /XXXXXXXX.arg: Could not create temp file /XXXXXXXX.arg: Permission denied at /home/t/tange/bin/parallel line 0000.
ubuntu OK readonly tmp ubuntu OK readonly tmp
ultrix open3: wtr should not be null at -e line 1 unixware Error in tempfile() using /XXXXXXXX.arg: Could not create temp file /XXXXXXXX.arg: Permission denied at /home/t/tange/bin/parallel line 0000
unixware OK readonly tmp
unixware UX:sh (/bin/sh): ERROR: source: Not found unixware UX:sh (/bin/sh): ERROR: source: Not found
unixware UX:env: ERROR: No such file or directory: bash
echo echo
echo '### Does exporting a bash function make parallel fail?' echo '### Does exporting a bash function make parallel fail?'
echo 'If login shell is not bash compatible it fails' echo 'If login shell is not bash compatible it fails'
@ -678,68 +613,65 @@ unixware UX:env: ERROR: No such file or directory: bash
cat <(echo bash only A) cat <(echo bash only A)
} }
export -f funcA; export -f funcA;
bin/parallel funcA ::: 1' 2>&1 bin/parallel funcA ::: 1' 2>&1 | sort
### Does exporting a bash function make parallel fail? ### Does exporting a bash function make parallel fail?
If login shell is not bash compatible it fails If login shell is not bash compatible it fails
aix test funcA
aix bash only A aix bash only A
centos test funcA aix test funcA
centos bash only A centos bash only A
debian test funcA centos test funcA
debian bash only A debian bash only A
debian-ppc test funcA debian test funcA
debian-ppc bash only A debian-ppc bash only A
debian-ppc test funcA
freebsd Syntax error: Bad fd number freebsd Syntax error: Bad fd number
hpux test funcA
hpux bash only A hpux bash only A
hpux-ia64 test funcA hpux test funcA
hpux-ia64 bash only A hpux-ia64 bash only A
hurd test funcA hpux-ia64 test funcA
hurd bash only A hurd bash only A
irix Undefined subroutine &main::decode_base64 called at -e line 1. hurd test funcA
irix open3: exec of bzip2 -dc failed at -e line 1
macosx test funcA
macosx bash only A macosx bash only A
mandriva test funcA macosx test funcA
mandriva bash only A mandriva bash only A
miros test funcA mandriva test funcA
miros bash only A miros bash only A
netbsd test funcA miros test funcA
netbsd Badly placed ()'s. netbsd Badly placed ()'s.
netbsd Missing name for redirect. netbsd Missing name for redirect.
netbsd }: Command not found.
netbsd export: Command not found. netbsd export: Command not found.
netbsd funcA: Command not found. netbsd funcA: Command not found.
openbsd test funcA netbsd test funcA
netbsd }: Command not found.
openbsd bash only A openbsd bash only A
openindiana test funcA openbsd test funcA
openindiana bash only A openindiana bash only A
pidora test funcA openindiana test funcA
pidora bash only A pidora bash only A
pidora test funcA
qnx /bin/sh: syntax error: `(' unexpected qnx /bin/sh: syntax error: `(' unexpected
raspbian test funcA
raspbian bash only A raspbian bash only A
redhat test funcA raspbian test funcA
redhat bash only A redhat bash only A
scosysv test funcA redhat test funcA
scosysv bash only A scosysv bash only A
solaris test funcA scosysv test funcA
solaris bash only A solaris bash only A
solaris-x86 test funcA solaris test funcA
solaris-x86 bash only A solaris-x86 bash only A
solaris-x86 test funcA
sshwithpass minix test funcA sshwithpass minix test funcA
suse test funcA
suse bash only A suse bash only A
tru64 test funcA suse test funcA
tru64 bash only A tru64 bash only A
ubuntu test funcA tru64 test funcA
ubuntu bash only A ubuntu bash only A
ultrix open3: wtr should not be null at -e line 1 ubuntu test funcA
unixware test funcA
unixware UX:sh (/bin/sh): ERROR: source: Not found
unixware UX:sh (/bin/sh): ERROR: /bin/sh: Syntax error at line 3: `(' unexpected unixware UX:sh (/bin/sh): ERROR: /bin/sh: Syntax error at line 3: `(' unexpected
unixware UX:sh (/bin/sh): ERROR: source: Not found
unixware test funcA
echo echo
echo '### Does PARALLEL_SHELL help exporting a bash function' echo '### Does PARALLEL_SHELL help exporting a bash function'
echo 'If login shell is not bash compatible it should work' echo 'If login shell is not bash compatible it should work'
@ -775,8 +707,6 @@ hpux-ia64 test funcB
hpux-ia64 bash only B hpux-ia64 bash only B
hurd test funcB hurd test funcB
hurd bash only B hurd bash only B
irix Undefined subroutine &main::decode_base64 called at -e line 1.
irix open3: exec of bzip2 -dc failed at -e line 1
macosx test funcB macosx test funcB
macosx bash only B macosx bash only B
mandriva test funcB mandriva test funcB
@ -812,7 +742,6 @@ tru64 test funcB
tru64 bash only B tru64 bash only B
ubuntu test funcB ubuntu test funcB
ubuntu bash only B ubuntu bash only B
ultrix open3: wtr should not be null at -e line 1
unixware test funcB unixware test funcB
unixware bash only B unixware bash only B
echo echo
@ -907,8 +836,6 @@ hurd /home/t/tange/.profile
hurd /home/t/tange/.cshrc hurd /home/t/tange/.cshrc
hurd /home/t/tange/.tcshrc hurd /home/t/tange/.tcshrc
hurd install-OK hurd install-OK
irix /usr/freeware/bin/bash: line 1: /home/t/tange/setupenv: No such file or directory
irix env: bash: No such file or directory
macosx Installed env_parallel in: macosx Installed env_parallel in:
macosx /Users/tange/.bashrc macosx /Users/tange/.bashrc
macosx /Users/tange/.shrc macosx /Users/tange/.shrc
@ -1043,15 +970,15 @@ solaris /home/t/tange/.cshrc
solaris /home/t/tange/.tcshrc solaris /home/t/tange/.tcshrc
solaris install-OK solaris install-OK
solaris-x86 Installed env_parallel in: solaris-x86 Installed env_parallel in:
solaris-x86 ~/.bashrc solaris-x86 /home/tange/.bashrc
solaris-x86 ~/.shrc solaris-x86 /home/tange/.shrc
solaris-x86 ~/.zshenv solaris-x86 /home/tange/.zshenv
solaris-x86 ~/.config/fish/config.fish solaris-x86 /home/tange/.config/fish/config.fish
solaris-x86 ~/.kshrc solaris-x86 /home/tange/.kshrc
solaris-x86 ~/.mkshrc solaris-x86 /home/tange/.mkshrc
solaris-x86 ~/.profile solaris-x86 /home/tange/.profile
solaris-x86 ~/.cshrc solaris-x86 /home/tange/.cshrc
solaris-x86 ~/.tcshrc solaris-x86 /home/tange/.tcshrc
solaris-x86 install-OK solaris-x86 install-OK
sshwithpass minix Installed env_parallel in: sshwithpass minix Installed env_parallel in:
sshwithpass minix /home/t/tange/.bashrc sshwithpass minix /home/t/tange/.bashrc
@ -1097,8 +1024,18 @@ ubuntu /home/t/tange/.profile
ubuntu /home/t/tange/.cshrc ubuntu /home/t/tange/.cshrc
ubuntu /home/t/tange/.tcshrc ubuntu /home/t/tange/.tcshrc
ubuntu install-OK ubuntu install-OK
unixware Installed env_parallel in:
unixware /home/t/tange/.bashrc
unixware /home/t/tange/.shrc
unixware /home/t/tange/.zshenv
unixware /home/t/tange/.config/fish/config.fish
unixware /home/t/tange/.kshrc
unixware /home/t/tange/.mkshrc
unixware /home/t/tange/.profile
unixware /home/t/tange/.cshrc
unixware /home/t/tange/.tcshrc
unixware install-OK
unixware UX:sh (/bin/sh): ERROR: source: Not found unixware UX:sh (/bin/sh): ERROR: source: Not found
unixware UX:env: ERROR: No such file or directory: bash
aix env_parallel run-OK aix env_parallel run-OK
centos env_parallel run-OK centos env_parallel run-OK
debian env_parallel run-OK debian env_parallel run-OK
@ -1107,8 +1044,6 @@ freebsd Syntax error: Bad fd number
hpux env_parallel run-OK hpux env_parallel run-OK
hpux-ia64 env_parallel run-OK hpux-ia64 env_parallel run-OK
hurd env_parallel run-OK hurd env_parallel run-OK
irix /usr/freeware/bin/bash: line 1: /home/t/tange/setupenv: No such file or directory
irix env: bash: No such file or directory
macosx env_parallel run-OK macosx env_parallel run-OK
mandriva env_parallel run-OK mandriva env_parallel run-OK
miros env_parallel run-OK miros env_parallel run-OK
@ -1134,8 +1069,6 @@ tru64 env_parallel run-OK
ubuntu env_parallel run-OK ubuntu env_parallel run-OK
unixware env_parallel run-OK unixware env_parallel run-OK
unixware UX:sh (/bin/sh): ERROR: source: Not found unixware UX:sh (/bin/sh): ERROR: source: Not found
parallel: Warning: Starting 11 processes took > 2 sec.
parallel: Warning: Consider adjusting -j. Press CTRL-C to stop.
aix reading from process substitution OK aix reading from process substitution OK
centos reading from process substitution OK centos reading from process substitution OK
debian reading from process substitution OK debian reading from process substitution OK
@ -1144,8 +1077,6 @@ freebsd Syntax error: "(" unexpected (expecting word)
hpux reading from process substitution OK hpux reading from process substitution OK
hpux-ia64 reading from process substitution OK hpux-ia64 reading from process substitution OK
hurd reading from process substitution OK hurd reading from process substitution OK
irix /usr/freeware/bin/bash: line 1: /home/t/tange/setupenv: No such file or directory
irix env: bash: No such file or directory
macosx reading from process substitution OK macosx reading from process substitution OK
mandriva reading from process substitution OK mandriva reading from process substitution OK
miros reading from process substitution OK miros reading from process substitution OK
@ -1165,7 +1096,6 @@ sshwithpass minix reading from process substitution OK
suse reading from process substitution OK suse reading from process substitution OK
tru64 reading from process substitution OK tru64 reading from process substitution OK
ubuntu reading from process substitution OK ubuntu reading from process substitution OK
ultrix Missing name for redirect.
unixware UX:sh (/bin/sh): ERROR: /bin/sh: Syntax error at line 1: `(' unexpected unixware UX:sh (/bin/sh): ERROR: /bin/sh: Syntax error at line 1: `(' unexpected
# Test empty command name in process list # Test empty command name in process list
test_empty_cmd() { test_empty_cmd() {
@ -1194,8 +1124,6 @@ hpux-ia64 ### Test if empty command name in process list causes problems
hpux-ia64 OK_with_empty_cmd hpux-ia64 OK_with_empty_cmd
hurd ### Test if empty command name in process list causes problems hurd ### Test if empty command name in process list causes problems
hurd OK_with_empty_cmd hurd OK_with_empty_cmd
irix open3: exec of bzip2 -dc failed at -e line 1
irix Undefined subroutine &main::decode_base64 called at -e line 1.
macosx ### Test if empty command name in process list causes problems macosx ### Test if empty command name in process list causes problems
macosx OK_with_empty_cmd macosx OK_with_empty_cmd
mandriva ### Test if empty command name in process list causes problems mandriva ### Test if empty command name in process list causes problems
@ -1231,7 +1159,6 @@ tru64 ### Test if empty command name in process list causes problems
tru64 OK_with_empty_cmd tru64 OK_with_empty_cmd
ubuntu ### Test if empty command name in process list causes problems ubuntu ### Test if empty command name in process list causes problems
ubuntu OK_with_empty_cmd ubuntu OK_with_empty_cmd
ultrix open3: wtr should not be null at -e line 1
unixware ### Test if empty command name in process list causes problems unixware ### Test if empty command name in process list causes problems
unixware OK_with_empty_cmd unixware OK_with_empty_cmd
echo echo
@ -1253,9 +1180,6 @@ freebsd Syntax error: Bad fd number
hpux hpux
hpux-ia64 1 2 1 2 3 1 2 3 4 hpux-ia64 1 2 1 2 3 1 2 3 4
hurd 1 2 1 2 3 1 2 3 4 hurd 1 2 1 2 3 1 2 3 4
irix
irix /usr/freeware/bin/bash: line 1: /home/t/tange/setupenv: No such file or directory
irix /usr/freeware/bin/bash: line 1: parset: command not found
macosx 1 2 1 2 3 1 2 3 4 macosx 1 2 1 2 3 1 2 3 4
mandriva 1 2 1 2 3 1 2 3 4 mandriva 1 2 1 2 3 1 2 3 4
miros 1 2 1 2 3 1 2 3 4 miros 1 2 1 2 3 1 2 3 4
@ -1288,9 +1212,6 @@ freebsd Syntax error: Bad fd number
hpux hpux
hpux-ia64 1 2 1 2 1 2 hpux-ia64 1 2 1 2 1 2
hurd 2 2 3 2 3 4 hurd 2 2 3 2 3 4
irix
irix /usr/freeware/bin/bash: line 1: /home/t/tange/setupenv: No such file or directory
irix /usr/freeware/bin/bash: line 1: env_parset: command not found
macosx 2 2 3 2 3 4 macosx 2 2 3 2 3 4
mandriva 2 2 3 2 3 4 mandriva 2 2 3 2 3 4
miros 1 2 1 2 1 2 miros 1 2 1 2 1 2
@ -1338,9 +1259,6 @@ freebsd Syntax error: Bad fd number
hpux ,, hpux ,,
hpux-ia64 1 2,1 2 3,1 2 3 4 hpux-ia64 1 2,1 2 3,1 2 3 4
hurd 1 2,1 2 3,1 2 3 4 hurd 1 2,1 2 3,1 2 3 4
irix ,,
irix /usr/freeware/bin/bash: line 1: /home/t/tange/setupenv: No such file or directory
irix /usr/freeware/bin/bash: line 1: parset: command not found
macosx 1 2,1 2 3,1 2 3 4 macosx 1 2,1 2 3,1 2 3 4
mandriva 1 2,1 2 3,1 2 3 4 mandriva 1 2,1 2 3,1 2 3 4
miros 1 2,1 2 3,1 2 3 4 miros 1 2,1 2 3,1 2 3 4
@ -1362,7 +1280,7 @@ sshwithpass minix 1 2,1 2 3,1 2 3 4
suse 1 2,1 2 3,1 2 3 4 suse 1 2,1 2 3,1 2 3 4
tru64 1 2,1 2 3,1 2 3 4 tru64 1 2,1 2 3,1 2 3 4
ubuntu 1 2,1 2 3,1 2 3 4 ubuntu 1 2,1 2 3,1 2 3 4
unixware ,, unixware 1 2,1 2 3,1 2 3 4
unixware UX:sh (/bin/sh): ERROR: source: Not found unixware UX:sh (/bin/sh): ERROR: source: Not found
### env_parset var1,var2,var3 seq ::: 2 3 4 ### env_parset var1,var2,var3 seq ::: 2 3 4
aix 2,2 3,2 3 4 aix 2,2 3,2 3 4
@ -1373,9 +1291,6 @@ freebsd Syntax error: Bad fd number
hpux ,, hpux ,,
hpux-ia64 1 2,1 2,1 2 hpux-ia64 1 2,1 2,1 2
hurd 2,2 3,2 3 4 hurd 2,2 3,2 3 4
irix ,,
irix /usr/freeware/bin/bash: line 1: /home/t/tange/setupenv: No such file or directory
irix /usr/freeware/bin/bash: line 1: env_parset: command not found
macosx 2,2 3,2 3 4 macosx 2,2 3,2 3 4
mandriva 2,2 3,2 3 4 mandriva 2,2 3,2 3 4
miros 1 2,1 2,1 2 miros 1 2,1 2,1 2

View file

@ -656,7 +656,6 @@ completed 2
completed 0 completed 0
tried 0 tried 0
show_signals() { show_signals() {
perl -e 'for(keys %SIG) { perl -e 'for(keys %SIG) {
$SIG{$_} = eval "sub { print \"Got $_\\n\"; }"; $SIG{$_} = eval "sub { print \"Got $_\\n\"; }";
@ -868,6 +867,7 @@ MFLAGS
OLDPWD OLDPWD
ORACLE_HOME ORACLE_HOME
ORACLE_SID ORACLE_SID
PARALLEL PARALLEL
PARALLEL_HOME PARALLEL_HOME
PARALLEL_PID PARALLEL_PID
@ -994,7 +994,7 @@ For details: see man env_parallel
export -f my_func3 export -f my_func3
parallel -vv --workdir ... --nice 17 --env _ --trc {}.out \ parallel -vv --workdir ... --nice 17 --env _ --trc {}.out \
-S $SERVER1 my_func3 {} ::: abc-file -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 -- 'rm -f ./.TMPWORKDIR/abc-file; sh -c '"'"'rmdir ./.TMPWORKDIR/ ./.parallel/tmp/ ./.parallel/ 2>/dev/null;'"'"''"'"'rm -rf ./.TMPWORKDIR;'"'";ssh -l parallel lo -- 'rm -f ./.TMPWORKDIR/abc-file.out; sh -c '"'"'rmdir ./.TMPWORKDIR/ ./.parallel/tmp/ ./.parallel/ 2>/dev/null;'"'"''"'"'rm -rf ./.TMPWORKDIR;'"'";ssh -l parallel lo -- rm -rf .TMPWORKDIR; exit $_EXIT_status; ssh -l parallel lo -- mkdir -p ./.TMPWORKDIR && rsync --protocol 30 -rlDzR -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 -- 'rm -f ./.TMPWORKDIR/abc-file; sh -c '"'"'rmdir ./.TMPWORKDIR/ ./.parallel/tmp/ ./.parallel/ 2>/dev/null;'"'"''"'"'rm -rf ./.TMPWORKDIR;'"'";ssh -l parallel lo -- 'rm -f ./.TMPWORKDIR/abc-file.out; sh -c '"'"'rmdir ./.TMPWORKDIR/ ./.parallel/tmp/ ./.parallel/ 2>/dev/null;'"'"''"'"'rm -rf ./.TMPWORKDIR;'"'";ssh -l parallel lo -- rm -rf .TMPWORKDIR;exit $_EXIT_status;
parset myvar1,myvar2 echo ::: a b parset myvar1,myvar2 echo ::: a b
echo $myvar1 echo $myvar1
echo $myvar2 echo $myvar2
@ -1440,8 +1440,8 @@ Start 4
Slow started Slow started
Forced running after 1 sec Forced running after 1 sec
Slow ended Slow ended
Give up after 2 secs
parallel: Warning: Semaphore timed out. Stealing the semaphore. parallel: Warning: Semaphore timed out. Stealing the semaphore.
parallel: Warning: Semaphore timed out. Exiting.
parallel --help parallel --help
Usage: Usage:
@ -1482,7 +1482,7 @@ If you pay 10000 EUR you should feel free to use GNU Parallel without citing.
parallel --version parallel --version
GNU parallel VERSION GNU parallel VERSION
Copyright (C) 2007-2018 Ole Tange and Free Software Foundation, Inc. Copyright (C) 2007-2019 Ole Tange and Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it. This is free software: you are free to change and redistribute it.
GNU parallel comes with no warranty. GNU parallel comes with no warranty.

View file

@ -1,7 +1,7 @@
echo '### Test --return of weirdly named file' echo '### Test --return of weirdly named file'
### Test --return of weirdly named file ### Test --return of weirdly named file
stdout parallel --return {} -vv -S parallel\@parallel-server1 echo '>'{} ::: 'aa<${#}" b' | perl -pe 's/\S*parallel-server\S*/one-server/;s:[a-z+=/\\0-9]{500,}:base64:i;'; rm 'aa<${#}" b' stdout parallel --return {} -vv -S parallel\@parallel-server1 echo '>'{} ::: 'aa<${#}" b' | perl -pe 's/\S*parallel-server\S*/one-server/;s:[a-z+=/\\0-9]{500,}:base64:i;'; rm 'aa<${#}" b'
ssh -l parallel one-server -- exec 'perl -e '"'"'$ENV{"PARALLEL_PID"}="XXXXX";$ENV{"PARALLEL_SEQ"}="1";$bashfunc = "";@ARGV="echo >'"'"'"'"'"'"'"'"'aa<\${#}\" b'"'"'"'"'"'"'"'"'";$shell="$ENV{SHELL}";$tmpdir="/tmp/test61-tmpdir";$nice=0;do{$ENV{PARALLEL_TMP}=$tmpdir."/par".join"",map{(0..9,"a".."z","A".."Z")[rand(62)]}(1..5);}while(-e$ENV{PARALLEL_TMP});$SIG{CHLD}=sub{$done=1;};$pid=fork;unless($pid){eval{setpgrp};eval{setpriority(0,0,$nice)};exec$shell,"-c",($bashfunc."@ARGV");die"exec:$!\n";}do{$s=$s<1?0.001+$s*1.03:$s;select(undef,undef,undef,$s);}until($done||getppid==1);kill(SIGHUP,-${pid})unless$done;wait;exit($?&127?128+($?&127):1+$?>>8)'"'";_EXIT_status=$?; mkdir -p ./. && rsync --protocol 30 --rsync-path='cd ././.; rsync' -rlDzR -e'ssh -l parallel' parallel-server1:"'"'./aa<${#}" b'"'" ./.; exit $_EXIT_status; ssh -l parallel one-server -- exec 'perl -e '"'"'$ENV{"PARALLEL_PID"}="XXXXX";$ENV{"PARALLEL_SEQ"}="1";$bashfunc = "";@ARGV="echo >'"'"'"'"'"'"'"'"'aa<\${#}\" b'"'"'"'"'"'"'"'"'";$shell="$ENV{SHELL}";$tmpdir="/tmp/test61-tmpdir";$nice=0;do{$ENV{PARALLEL_TMP}=$tmpdir."/par".join"",map{(0..9,"a".."z","A".."Z")[rand(62)]}(1..5);}while(-e$ENV{PARALLEL_TMP});$SIG{CHLD}=sub{$done=1;};$pid=fork;unless($pid){eval{setpgrp};eval{setpriority(0,0,$nice)};exec$shell,"-c",($bashfunc."@ARGV");die"exec:$!\n";}do{$s=$s<1?0.001+$s*1.03:$s;select(undef,undef,undef,$s);}until($done||getppid==1);kill(SIGHUP,-${pid})unless$done;wait;exit($?&127?128+($?&127):1+$?>>8)'"'";_EXIT_status=$?; mkdir -p ./. && rsync --protocol 30 --rsync-path='cd ././.; rsync' -rlDzR -e'ssh -l parallel' parallel-server1:"'"'./aa<${#}" b'"'" ./.;exit $_EXIT_status;
echo '### Test if remote login shell is csh' echo '### Test if remote login shell is csh'
### Test if remote login shell is csh ### Test if remote login shell is csh
stdout parallel -k -vv -S csh@localhost 'echo $PARALLEL_PID $PARALLEL_SEQ {}| wc -w' ::: a b c | perl -pe 's/\S*parallel-server\S*/one-server/;s:[a-z+=/\\0-9]{500,}:base64:i;' stdout parallel -k -vv -S csh@localhost 'echo $PARALLEL_PID $PARALLEL_SEQ {}| wc -w' ::: a b c | perl -pe 's/\S*parallel-server\S*/one-server/;s:[a-z+=/\\0-9]{500,}:base64:i;'