Passes testsuite.

This commit is contained in:
Ole Tange 2013-04-11 21:55:33 +02:00
parent 6e8247d6d1
commit bb0ef1c4cc
15 changed files with 310 additions and 36 deletions

6
README
View file

@ -28,6 +28,9 @@ possible to use output from GNU Parallel as input for other programs.
Full installation of GNU Parallel is as simple as:
wget http://ftpmirror.gnu.org/parallel/parallel-20130410.tar.bz2
bzip2 -dc parallel-20130410.tar.bz2 | tar xvf -
cd parallel-20130410
./configure && make && make install
@ -36,6 +39,9 @@ Full installation of GNU Parallel is as simple as:
If you are not root you can add ~/bin to your path and install in
~/bin and ~/share:
wget http://ftpmirror.gnu.org/parallel/parallel-20130410.tar.bz2
bzip2 -dc parallel-20130410.tar.bz2 | tar xvf -
cd parallel-20130410
./configure --prefix=$HOME && make && make install
Or if your system lacks 'make' you can simply copy src/parallel

View file

@ -11,20 +11,15 @@ Modified => alpha
== Update version ==
=== configure.ac ===
configure.ac: AC_INIT([parallel], [20100422], [bug-parallel@gnu.org])
src/parallel: $Global::version = 20100422;
README: parallel-20130222
YYYYMMDD=`yyyymmdd`
perl -i -pe "s/20\d\d\d\d\d\d/$YYYYMMDD/" configure.ac
=== src/parallel ===
src/parallel: $Global::version = 20100422;
YYYYMMDD=`yyyymmdd`
perl -i -pe "/version/ and s/20\d\d\d\d\d\d/$YYYYMMDD/" src/parallel
perl -i -pe "/version/ and s/20\d\d\d\d\d\d/$YYYYMMDD/" src/sql
perl -i -pe "/version/ and s/20\d\d\d\d\d\d/$YYYYMMDD/" src/niceload
perl -i -pe "s/parallel-20\d\d\d\d\d\d/parallel-$YYYYMMDD/" README
=== Autoconf/automake ===

View file

@ -15,7 +15,7 @@ echo '### Bug in --load';
nice parallel -k --load 30 sleep 0.1\;echo ::: 1 2 3
echo '### Test --timeout';
nice parallel -j0 -k --timeout 1 echo {}\; sleep {}\; echo {} ::: 1.1 6.6 7.7 8.8
nice parallel -j0 -k --timeout 1 echo {}\; sleep {}\; echo {} ::: 1.1 7.7 8.8 9.9
echo '### Test retired';
stdout parallel -B;

View file

@ -144,4 +144,11 @@ echo '### Negative replacement strings'
echo 'bug #38439: "open files" with --files --pipe blocks after a while'
ulimit -n 20; yes |head -n 10M | parallel --pipe -k echo {#} of 21
echo 'bug #34241: --pipe should not spawn unneeded processes - part 2'
seq 500 | parallel --tmpdir . -j10 --pipe --block 1k --files wc >/dev/null;
ls *.par | wc -l; rm *.par;
seq 500 | parallel --tmpdir . -j10 --pipe --block 1k --files --dry-run wc >/dev/null;
echo No .par should exist;
stdout ls *.par
EOF

View file

@ -6,12 +6,14 @@ P="scosysv centos dragonfly netbsd freebsd solaris openbsd debian aix hpux qnx i
POLAR=`parallel echo {}.polarhome.com ::: $P`
echo '### Tests on polarhome machines'
parallel -j0 ssh {} mkdir -p bin ::: $POLAR 2>/dev/null &
echo 'Setup on polarhome machines'
stdout parallel -kj0 ssh {} mkdir -p bin ::: $POLAR >/dev/null &
# scp to each polarhome machine do not work. From redhat it works.
rsync -a `which parallel` redhat.polarhome.com:bin/
ssh redhat.polarhome.com \
stdout rsync -a `which parallel` redhat.polarhome.com:bin/
stdout ssh redhat.polarhome.com \
chmod 755 bin/parallel\; \
bin/parallel -j0 ssh {} rm -f bin/parallel\\\;scp bin/parallel {}:bin/ ::: $POLAR
bin/parallel -kj0 ssh {} rm -f bin/parallel\\\;scp bin/parallel {}:bin/ ::: $POLAR
# Now test
parallel --argsep // -k --tag ssh {} bin/parallel echo Works on ::: {} // $POLAR
echo 'Run the test on polarhome machines'
stdout parallel --argsep // -k --tag ssh {} bin/parallel -k echo Works on ::: {} // $POLAR

View file

@ -12,7 +12,11 @@ echo '### Test --keeporder'
(seq 0 2) | parallel --keeporder -j100% -S 1/:,2/parallel@parallel-server2 -q perl -e 'sleep 1;print "job{}\n";exit({})'
echo '### Test SIGTERM'
(sleep 5; killall parallel -TERM) & seq 1 100 | stdout parallel -k -j9 sleep 3';' echo | sort
parallel -k -j9 sleep 3';' echo ::: {1..99} >/tmp/$$ 2>&1 &
A=$!
sleep 5; kill -TERM $A
wait
sort /tmp/$$
echo '### Test bug: empty line for | sh with -k'
(echo echo a ; echo ; echo echo b) | parallel -k

View file

@ -31,7 +31,7 @@ send "y\n"
expect "opt--interactive 3"
_EOF
echo
cat <<'EOF' | parallel -j0 -k
cat <<'EOF' | parallel -j0 -k -L1
echo '### Test -L -l and --max-lines'
(echo a_b;echo c) | parallel -km -L2 echo
(echo a_b;echo c) | parallel -k -L2 echo
@ -89,7 +89,9 @@ seq 1 10 >/tmp/$$-1; parallel -k -a /tmp/$$-1 echo
seq 1 10 >/tmp/$$-2; parallel -k --arg-file /tmp/$$-2 echo
echo '### Test killing children with --timeout and exit value (failed if timed out)'
pstree | grep sleep | grep -v anacron | grep -v screensave | wc; parallel --timeout 3 'true {} ; for i in `seq 100 120`; do bash -c "(sleep $i)" & sleep $i & done; wait; echo No good' ::: 1000000000 1000000001 ; echo $?; pstree | grep sleep | grep -v anacron | grep -v screensave | wc
pstree | grep sleep | grep -v anacron | grep -v screensave | wc;
parallel --timeout 3 'true {} ; for i in `seq 100 120`; do bash -c "(sleep $i)" & sleep $i & done; wait; echo No good' ::: 1000000000 1000000001 ;
echo $?; pstree | grep sleep | grep -v anacron | grep -v screensave | wc
EOF
#echo '### Test bugfix if no command given'

View file

@ -22,19 +22,19 @@ echo '### Test --load locally - should take >10s'
stdout /usr/bin/time -f %e parallel --load 10 sleep ::: 1 | perl -ne '$_ > 10 and print "OK\n"'
echo '### Test --load remote'
ssh parallel@$SERVER2 'seq 10 | parallel --timeout 10 -j0 -N0 "gzip < /dev/zero > /dev/null"' &
ssh parallel@$SERVER2 'seq 10 | parallel --nice 19 --timeout 10 -j0 -N0 "gzip < /dev/zero > /dev/null"' &
stdout /usr/bin/time -f %e parallel -S parallel@$SERVER2 --load 10 sleep ::: 1 | perl -ne '$_ > 10 and print "OK\n"'
echo '### Test --load read from a file - more than 3s'
echo '# This will run 10 processes in parallel for 10s';
seq 10 | parallel --nice 19 --timeout 10 -j0 -N0 "gzip < /dev/zero > /dev/null" &
( echo 8 > /tmp/parallel_load_file; sleep 4; echo 1000 > /tmp/parallel_load_file ) &
seq 10 | parallel --nice 19 --timeout 10 -j0 -N0 "gzip < /dev/zero > /dev/null" &
( echo 8 > /tmp/parallel_load_file; sleep 4; echo 1000 > /tmp/parallel_load_file ) &
sleep 1;stdout /usr/bin/time -f %e parallel --load /tmp/parallel_load_file sleep ::: 1 | perl -ne '$_ > 3 and print "OK\n"'
echo '### Test --load read from a file - less than 10s';
echo '# This will run 10 processes in parallel for 10s';
seq 10 | parallel --nice 19 --timeout 10 -j0 -N0 "gzip < /dev/zero > /dev/null" &
( echo 8 > /tmp/parallel_load_file2; sleep 4; echo 1000 > /tmp/parallel_load_file2 ) &
stdout /usr/bin/time -f %e parallel --load /tmp/parallel_load_file2 sleep ::: 1 | perl -ne '$_ < 10 and print "OK\n"'
sleep 1;stdout /usr/bin/time -f %e parallel --load /tmp/parallel_load_file2 sleep ::: 1 | perl -ne '$_ < 10 and print "OK\n"'
EOF

View file

@ -20,7 +20,7 @@ echo '### Test --nonall';
parallel --nonall -k -S $SSHLOGIN1,$SSHLOGIN2 'hostname' | sort
echo '### Test --nonall -u - should be interleaved x y x y';
parallel --nonall -S $SSHLOGIN1,$SSHLOGIN2 -u 'hostname|grep -q redhat9 && sleep 3; hostname;sleep 8;hostname;'
parallel --nonall -S $SSHLOGIN1,$SSHLOGIN2 -u 'hostname|grep -q redhat9 && sleep 3; hostname;sleep 12;hostname;'
echo '### Test read sshloginfile from STDIN';
echo $SSHLOGIN1 | parallel -S - --nonall hostname;

View file

@ -20,9 +20,9 @@ ajob2b job2
### Test --timeout
1.1
1.1
6.6
7.7
8.8
9.9
### Test retired
parallel: Error: -g has been retired. Use --group.
parallel: Error: -B has been retired. Use --bf.

View file

@ -259,3 +259,7 @@ bug #38439: "open files" with --files --pipe blocks after a while
19 of 21
20 of 21
21 of 21
bug #34241: --pipe should not spawn unneeded processes - part 2
2
No .par should exist
ls: cannot access *.par: No such file or directory

View file

@ -1,6 +1,6 @@
### Test --pipe
### Test 200M records with too small block
parallel: Warning: A full record was not matched in a block. Increasing to --blocksize 260000000
parallel: Warning: A full record was not matched in a block. Increasing to --blocksize 260000001
303111434
303111434
303111434
@ -127,11 +127,10 @@ c
1>01a02a0a
2>0a12a34a
3>45a6a
parallel: Warning: A full record was not matched in a block. Increasing to --blocksize 2
parallel: Warning: A full record was not matched in a block. Increasing to --blocksize 3
parallel: Warning: A full record was not matched in a block. Increasing to --blocksize 4
parallel: Warning: A full record was not matched in a block. Increasing to --blocksize 5
1>01a02a0a
parallel: Warning: A full record was not matched in a block. Increasing to --blocksize 6
parallel: Warning: A full record was not matched in a block. Increasing to --blocksize 8
2>0a12a34a
3>45a6a
### Test 10M records with too big block

View file

@ -1,19 +1,274 @@
### Tests on polarhome machines
Setup on polarhome machines
Fedora release 17 (Beefy Miracle)
Welcome to RedHat/Fedora ...member of polarhome.com realm
Fedora release 17 (Beefy Miracle)
Welcome to RedHat/Fedora ...member of polarhome.com realm
SCO OpenServer(TM) Release 6
Welcome to scosysv ...member of polarhome.com realm
SCO OpenServer(TM) Release 6
Welcome to scosysv ...member of polarhome.com realm
CentOS release 5.6 (Final)
Welcome to CentOS ...member of polarhome.com realm
CentOS release 5.6 (Final)
Welcome to CentOS ...member of polarhome.com realm
DragonFly v2.10.1.1
Welcome to DragonFly ...member of polarhome.com realm
DragonFly v2.10.1.1
Welcome to DragonFly ...member of polarhome.com realm
NetBSD 5.1
Welcome to NetBSD ...member of polarhome.com realm
NetBSD 5.1
Welcome to NetBSD ...member of polarhome.com realm
FreeBSD 8.2
Welcome to FreeBSD ...member of polarhome.com realm
FreeBSD 8.2
Welcome to FreeBSD ...member of polarhome.com realm
SunOS 5.10
SUN Ultra-5
Welcome to Solaris ...member of polarhome.com realm
SunOS 5.10
SUN Ultra-5
Welcome to Solaris ...member of polarhome.com realm
OpenBSD 4.9
Welcome to OpenBSD ...member of polarhome.com realm
OpenBSD 4.9
Welcome to OpenBSD ...member of polarhome.com realm
Debian GNU/Linux 6.0.2 (squeeze)
Welcome to debian ...member of polarhome.com realm
Debian GNU/Linux 6.0.2 (squeeze)
Welcome to debian ...member of polarhome.com realm
Welcome to AIX7 ...member of polarhome.com realm
Welcome to AIX7 ...member of polarhome.com realm
HP-UX hpux.polarhome.com B.11.11 U 9000/785 (ta)
Welcome to HPUX... member of polarhome.com realm
HP-UX hpux.polarhome.com B.11.11 U 9000/785 (ta)
Welcome to HPUX... member of polarhome.com realm
QNX 6.5.0
Welcome to QNX ...member of polarhome.com realm
QNX 6.5.0
Welcome to QNX ...member of polarhome.com realm
IRIX64 6.5 07202013 IP35
Welcome to irix ...member of polarhome.com realm
IRIX64 6.5 07202013 IP35
Welcome to irix ...member of polarhome.com realm
openSUSE 11.4 "Celadon"
Welcome to SuSE/openSUSE ...member of polarhome.com realm
openSUSE 11.4 "Celadon"
Welcome to SuSE/openSUSE ...member of polarhome.com realm
OpenIndiana SunOS 5.11
Welcome to OpenIndiana ...member of polarhome.com realm
OpenIndiana SunOS 5.11
Welcome to OpenIndiana ...member of polarhome.com realm
Mandriva Linux release 2010.2 (Official) for x86_64
Welcome to Mandrake/Mandriva ...member of polarhome.com realm
Mandriva Linux release 2010.2 (Official) for x86_64
Welcome to Mandrake/Mandriva ...member of polarhome.com realm
SCO UnixWare 7.1.4
Welcome to unixware ...member of polarhome.com realm
SCO UnixWare 7.1.4
Welcome to unixware ...member of polarhome.com realm
MirBSD/i386
Welcome to MirOS ...member of polarhome.com realm
MirBSD/i386
Welcome to MirOS ...member of polarhome.com realm
Debian GNU/Linux 6.0
RaspberryPi/bcm2708 reference 2.0
Welcome to raspberrypi ...member of polarhome.com realm
Debian GNU/Linux 6.0
RaspberryPi/bcm2708 reference 2.0
Welcome to raspberrypi ...member of polarhome.com realm
Debian GNU/Hurd wheezy/sid
Welcome to hurd ...member of polarhome.com realm.
Debian GNU/Hurd wheezy/sid
Welcome to hurd ...member of polarhome.com realm.
Ubuntu 10.04.2 LTS
Welcome to Ubuntu ...member of polarhome.com realm
Ubuntu 10.04.2 LTS
Welcome to Ubuntu ...member of polarhome.com realm
Run the test on polarhome machines
scosysv.polarhome.com SCO OpenServer(TM) Release 6
scosysv.polarhome.com Welcome to scosysv ...member of polarhome.com realm
scosysv.polarhome.com
scosysv.polarhome.com Works on scosysv.polarhome.com
centos.polarhome.com
centos.polarhome.com CentOS release 5.6 (Final)
centos.polarhome.com Welcome to CentOS ...member of polarhome.com realm
centos.polarhome.com
centos.polarhome.com Works on centos.polarhome.com
dragonfly.polarhome.com
dragonfly.polarhome.com MirBSD/i386
dragonfly.polarhome.com Welcome to MirOS ...member of polarhome.com realm
dragonfly.polarhome.com
dragonfly.polarhome.com Works on dragonfly.polarhome.com
netbsd.polarhome.com
netbsd.polarhome.com NetBSD 5.1
netbsd.polarhome.com Welcome to NetBSD ...member of polarhome.com realm
netbsd.polarhome.com
netbsd.polarhome.com Works on netbsd.polarhome.com
freebsd.polarhome.com
freebsd.polarhome.com FreeBSD 8.2
freebsd.polarhome.com Welcome to FreeBSD ...member of polarhome.com realm
freebsd.polarhome.com
freebsd.polarhome.com Works on freebsd.polarhome.com
solaris.polarhome.com
solaris.polarhome.com SunOS 5.10
solaris.polarhome.com SUN Ultra-5
solaris.polarhome.com Welcome to Solaris ...member of polarhome.com realm
solaris.polarhome.com
solaris.polarhome.com Works on solaris.polarhome.com
openbsd.polarhome.com
openbsd.polarhome.com OpenBSD 4.9
openbsd.polarhome.com Welcome to OpenBSD ...member of polarhome.com realm
openbsd.polarhome.com
openbsd.polarhome.com Works on openbsd.polarhome.com
debian.polarhome.com
debian.polarhome.com Debian GNU/Linux 6.0.2 (squeeze)
debian.polarhome.com Welcome to debian ...member of polarhome.com realm
debian.polarhome.com
debian.polarhome.com Works on debian.polarhome.com
aix.polarhome.com
aix.polarhome.com Welcome to AIX7 ...member of polarhome.com realm
aix.polarhome.com Works on aix.polarhome.com
hpux.polarhome.com
hpux.polarhome.com HP-UX hpux.polarhome.com B.11.11 U 9000/785 (ta)
hpux.polarhome.com Welcome to HPUX... member of polarhome.com realm
hpux.polarhome.com
hpux.polarhome.com No such file or directory: perl
qnx.polarhome.com
qnx.polarhome.com QNX 6.5.0
qnx.polarhome.com Welcome to QNX ...member of polarhome.com realm
qnx.polarhome.com
qnx.polarhome.com perl: No such file or directory
irix.polarhome.com
irix.polarhome.com IRIX64 6.5 07202013 IP35
irix.polarhome.com Welcome to irix ...member of polarhome.com realm
irix.polarhome.com Unknown open() mode '>&' at bin/parallel line 1271, <$fh> line 1.
suse.polarhome.com
suse.polarhome.com openSUSE 11.4 "Celadon"
suse.polarhome.com Welcome to SuSE/openSUSE ...member of polarhome.com realm
suse.polarhome.com
suse.polarhome.com Works on suse.polarhome.com
minix.polarhome.com Works on minix.polarhome.com
openindiana.polarhome.com
openindiana.polarhome.com OpenIndiana SunOS 5.11
openindiana.polarhome.com Welcome to OpenIndiana ...member of polarhome.com realm
openindiana.polarhome.com
openindiana.polarhome.com parallel: Warning: Cannot figure out number of CPU cores. Using 1.
openindiana.polarhome.com Works on openindiana.polarhome.com
mandriva.polarhome.com
mandriva.polarhome.com Mandriva Linux release 2010.2 (Official) for x86_64
mandriva.polarhome.com Welcome to Mandrake/Mandriva ...member of polarhome.com realm
mandriva.polarhome.com
mandriva.polarhome.com Works on mandriva.polarhome.com
unixware.polarhome.com SCO UnixWare 7.1.4
unixware.polarhome.com Welcome to unixware ...member of polarhome.com realm
unixware.polarhome.com
unixware.polarhome.com Works on unixware.polarhome.com
miros.polarhome.com
miros.polarhome.com MirBSD/i386
miros.polarhome.com Welcome to MirOS ...member of polarhome.com realm
miros.polarhome.com
miros.polarhome.com Works on miros.polarhome.com
raspberrypi.polarhome.com
raspberrypi.polarhome.com MirBSD/i386
raspberrypi.polarhome.com Welcome to MirOS ...member of polarhome.com realm
raspberrypi.polarhome.com
raspberrypi.polarhome.com Works on raspberrypi.polarhome.com
hurd.polarhome.com
hurd.polarhome.com Debian GNU/Hurd wheezy/sid
hurd.polarhome.com Welcome to hurd ...member of polarhome.com realm.
hurd.polarhome.com
hurd.polarhome.com Works on hurd.polarhome.com
ultrix.polarhome.com Variable "$VERSION" is not imported at Errno.pm line 10.
ultrix.polarhome.com Global symbol "VERSION" requires explicit package name at Errno.pm line 10.
ultrix.polarhome.com Variable "$VERSION" is not imported at Errno.pm line 11.
ultrix.polarhome.com Global symbol "VERSION" requires explicit package name at Errno.pm line 11.
ultrix.polarhome.com Variable "$VERSION" is not imported at Errno.pm line 11.
ultrix.polarhome.com Global symbol "VERSION" requires explicit package name at Errno.pm line 11.
ultrix.polarhome.com Variable "@ISA" is not imported at Errno.pm line 12.
ultrix.polarhome.com Global symbol "ISA" requires explicit package name at Errno.pm line 12.
ultrix.polarhome.com Variable "@EXPORT_OK" is not imported at Errno.pm line 14.
ultrix.polarhome.com Global symbol "EXPORT_OK" requires explicit package name at Errno.pm line 14.
ultrix.polarhome.com Variable "%EXPORT_TAGS" is not imported at Errno.pm line 32.
ultrix.polarhome.com Global symbol "EXPORT_TAGS" requires explicit package name at Errno.pm line 32.
ultrix.polarhome.com BEGIN not safe after errors--compilation aborted at Errno.pm line 188.
ultrix.polarhome.com BEGIN failed--compilation aborted at File/Temp.pm line 148.
ultrix.polarhome.com BEGIN failed--compilation aborted at bin/parallel line 28.
ubuntu.polarhome.com
ubuntu.polarhome.com Ubuntu 10.04.2 LTS
ubuntu.polarhome.com Welcome to Ubuntu ...member of polarhome.com realm
ubuntu.polarhome.com
ubuntu.polarhome.com Works on ubuntu.polarhome.com

View file

@ -1,21 +1,21 @@
### Test $PARALLEL - single line
1
ssh -l parallel parallel-server2 'eval `echo $SHELL | grep -E "/(t)?csh" > /dev/null && echo setenv PARALLEL_SEQ '$PARALLEL_SEQ'\; setenv PARALLEL_PID '$PARALLEL_PID' || echo PARALLEL_SEQ='$PARALLEL_SEQ'\;export PARALLEL_SEQ\; PARALLEL_PID='$PARALLEL_PID'\;export PARALLEL_PID` ;' echo\ 1;
ssh -l parallel parallel-server2 'eval `echo $SHELL | grep -E "/(t)?csh" > /dev/null && echo setenv PARALLEL_SEQ '$PARALLEL_SEQ'\; setenv PARALLEL_PID '$PARALLEL_PID' || echo PARALLEL_SEQ='$PARALLEL_SEQ'\;export PARALLEL_SEQ\; PARALLEL_PID='$PARALLEL_PID'\;export PARALLEL_PID` ;' echo\ 1;
1
ssh parallel\@parallel-server3 'eval `echo $SHELL | grep -E "/(t)?csh" > /dev/null && echo setenv PARALLEL_SEQ '$PARALLEL_SEQ'\; setenv PARALLEL_PID '$PARALLEL_PID' || echo PARALLEL_SEQ='$PARALLEL_SEQ'\;export PARALLEL_SEQ\; PARALLEL_PID='$PARALLEL_PID'\;export PARALLEL_PID` ;' echo\ 2;
ssh parallel\@parallel-server3 'eval `echo $SHELL | grep -E "/(t)?csh" > /dev/null && echo setenv PARALLEL_SEQ '$PARALLEL_SEQ'\; setenv PARALLEL_PID '$PARALLEL_PID' || echo PARALLEL_SEQ='$PARALLEL_SEQ'\;export PARALLEL_SEQ\; PARALLEL_PID='$PARALLEL_PID'\;export PARALLEL_PID` ;' echo\ 2;
2
### Test $PARALLEL - multi line
ssh -l parallel parallel-server2 'eval `echo $SHELL | grep -E "/(t)?csh" > /dev/null && echo setenv PARALLEL_SEQ '$PARALLEL_SEQ'\; setenv PARALLEL_PID '$PARALLEL_PID' || echo PARALLEL_SEQ='$PARALLEL_SEQ'\;export PARALLEL_SEQ\; PARALLEL_PID='$PARALLEL_PID'\;export PARALLEL_PID` ;' echo\ 1;
ssh -l parallel parallel-server2 'eval `echo $SHELL | grep -E "/(t)?csh" > /dev/null && echo setenv PARALLEL_SEQ '$PARALLEL_SEQ'\; setenv PARALLEL_PID '$PARALLEL_PID' || echo PARALLEL_SEQ='$PARALLEL_SEQ'\;export PARALLEL_SEQ\; PARALLEL_PID='$PARALLEL_PID'\;export PARALLEL_PID` ;' echo\ 1;
1
ssh parallel\@parallel-server3 'eval `echo $SHELL | grep -E "/(t)?csh" > /dev/null && echo setenv PARALLEL_SEQ '$PARALLEL_SEQ'\; setenv PARALLEL_PID '$PARALLEL_PID' || echo PARALLEL_SEQ='$PARALLEL_SEQ'\;export PARALLEL_SEQ\; PARALLEL_PID='$PARALLEL_PID'\;export PARALLEL_PID` ;' echo\ 2;
ssh parallel\@parallel-server3 'eval `echo $SHELL | grep -E "/(t)?csh" > /dev/null && echo setenv PARALLEL_SEQ '$PARALLEL_SEQ'\; setenv PARALLEL_PID '$PARALLEL_PID' || echo PARALLEL_SEQ='$PARALLEL_SEQ'\;export PARALLEL_SEQ\; PARALLEL_PID='$PARALLEL_PID'\;export PARALLEL_PID` ;' echo\ 2;
2
### Test ~/.parallel/config - single line
ssh -l parallel parallel-server2 'eval `echo $SHELL | grep -E "/(t)?csh" > /dev/null && echo setenv PARALLEL_SEQ '$PARALLEL_SEQ'\; setenv PARALLEL_PID '$PARALLEL_PID' || echo PARALLEL_SEQ='$PARALLEL_SEQ'\;export PARALLEL_SEQ\; PARALLEL_PID='$PARALLEL_PID'\;export PARALLEL_PID` ;' echo\ 1;
ssh -l parallel parallel-server2 'eval `echo $SHELL | grep -E "/(t)?csh" > /dev/null && echo setenv PARALLEL_SEQ '$PARALLEL_SEQ'\; setenv PARALLEL_PID '$PARALLEL_PID' || echo PARALLEL_SEQ='$PARALLEL_SEQ'\;export PARALLEL_SEQ\; PARALLEL_PID='$PARALLEL_PID'\;export PARALLEL_PID` ;' echo\ 1;
1
ssh parallel\@parallel-server3 'eval `echo $SHELL | grep -E "/(t)?csh" > /dev/null && echo setenv PARALLEL_SEQ '$PARALLEL_SEQ'\; setenv PARALLEL_PID '$PARALLEL_PID' || echo PARALLEL_SEQ='$PARALLEL_SEQ'\;export PARALLEL_SEQ\; PARALLEL_PID='$PARALLEL_PID'\;export PARALLEL_PID` ;' echo\ 2;
ssh parallel\@parallel-server3 'eval `echo $SHELL | grep -E "/(t)?csh" > /dev/null && echo setenv PARALLEL_SEQ '$PARALLEL_SEQ'\; setenv PARALLEL_PID '$PARALLEL_PID' || echo PARALLEL_SEQ='$PARALLEL_SEQ'\;export PARALLEL_SEQ\; PARALLEL_PID='$PARALLEL_PID'\;export PARALLEL_PID` ;' echo\ 2;
2
### Test ~/.parallel/config - multi line
ssh -l parallel parallel-server2 'eval `echo $SHELL | grep -E "/(t)?csh" > /dev/null && echo setenv PARALLEL_SEQ '$PARALLEL_SEQ'\; setenv PARALLEL_PID '$PARALLEL_PID' || echo PARALLEL_SEQ='$PARALLEL_SEQ'\;export PARALLEL_SEQ\; PARALLEL_PID='$PARALLEL_PID'\;export PARALLEL_PID` ;' echo\ 1;
ssh -l parallel parallel-server2 'eval `echo $SHELL | grep -E "/(t)?csh" > /dev/null && echo setenv PARALLEL_SEQ '$PARALLEL_SEQ'\; setenv PARALLEL_PID '$PARALLEL_PID' || echo PARALLEL_SEQ='$PARALLEL_SEQ'\;export PARALLEL_SEQ\; PARALLEL_PID='$PARALLEL_PID'\;export PARALLEL_PID` ;' echo\ 1;
1
ssh parallel\@parallel-server3 'eval `echo $SHELL | grep -E "/(t)?csh" > /dev/null && echo setenv PARALLEL_SEQ '$PARALLEL_SEQ'\; setenv PARALLEL_PID '$PARALLEL_PID' || echo PARALLEL_SEQ='$PARALLEL_SEQ'\;export PARALLEL_SEQ\; PARALLEL_PID='$PARALLEL_PID'\;export PARALLEL_PID` ;' echo\ 2;
ssh parallel\@parallel-server3 'eval `echo $SHELL | grep -E "/(t)?csh" > /dev/null && echo setenv PARALLEL_SEQ '$PARALLEL_SEQ'\; setenv PARALLEL_PID '$PARALLEL_PID' || echo PARALLEL_SEQ='$PARALLEL_SEQ'\;export PARALLEL_SEQ\; PARALLEL_PID='$PARALLEL_PID'\;export PARALLEL_PID` ;' echo\ 2;
2

View file

@ -42,7 +42,7 @@ echo /dev/fd/62
/dev/fd/62
echo foo
foo
ssh parallel@parallel-server3 ssh parallel-server2 'eval `echo $SHELL | grep -E "/(t)?csh" > /dev/null && echo setenv PARALLEL_SEQ '$PARALLEL_SEQ'\; setenv PARALLEL_PID '$PARALLEL_PID' || echo PARALLEL_SEQ='$PARALLEL_SEQ'\;export PARALLEL_SEQ\; PARALLEL_PID='$PARALLEL_PID'\;export PARALLEL_PID` ;' perl\ -pe\ \"\\\$a=1\;\ print\ \\\$a\"\ \<\(echo\ foo\);
ssh parallel@parallel-server3 ssh parallel-server2 'eval `echo $SHELL | grep -E "/(t)?csh" > /dev/null && echo setenv PARALLEL_SEQ '$PARALLEL_SEQ'\; setenv PARALLEL_PID '$PARALLEL_PID' || echo PARALLEL_SEQ='$PARALLEL_SEQ'\;export PARALLEL_SEQ\; PARALLEL_PID='$PARALLEL_PID'\;export PARALLEL_PID` ;' perl\ -pe\ \"\\\$a=1\;\ print\ \\\$a\"\ \<\(echo\ foo\);
1foo
### Test quoting of $ in command from profile file
perl -pe '$a=1; print $a' <(echo foo)