MAXTIME=50 RETRIES=3 MAXPROC=84 MAXINNERPROC=3
### Filter out working servers
1d0
< openstep
4d2
< alpha
7d4
< syllable
28,33d24
< dragonfly
< vax
< minix
32,33d21
< beaglebone
< cubieboard2
### Copy commands to servers
Done copying

    echo
    echo '### Works on ...'
    echo
    par_nonall parallel echo Works on {} ::: '`hostname`' 2>&1

### Works on ...

aix	Works on aix7
centos	Works on centos.polarhome.com
debian	Works on debian
debian-ppc	Works on debian-ppc
freebsd	Works on freebsd.polarhome.com
hpux	Works on hpux64
hpux-ia64	Works on hpux-ia64
hurd	Works on hurd
macosx	Works on macosx.polarhome.com
mandriva	Works on mandriva.polarhome.com
miros	Works on miros.polarhome.com
netbsd	Works on netbsd.polarhome.com
openbsd	Works on openbsd.polarhome.com
openindiana	Works on openindiana
pidora	Works on pidora
qnx	Works on qnx
qnx	parallel: Warning: Cannot figure out number of cpus. Using 1.
raspbian	Works on raspbian
redhat	Works on redhat.polarhome.com
scosysv	Works on scosysv.polarhome.com
solaris	Works on solaris
solaris-x86	Works on solaris-x86
suse	Works on suse
tru64	Works on tru64.polarhome.com
ubuntu	Works on ubuntu
unixware	Works on unixware.polarhome.com
unixware	UX:sh (parScript): ERROR: source: Not found
    echo
    echo '### --number-of-cores/--number-of-cpus should work with no error'
    echo
    par_nonall 'parallel --number-of-sockets; parallel --number-of-cores' 2>&1
    par_nonall 'parallel --number-of-threads; parallel --number-of-cpus' 2>&1

### --number-of-cores/--number-of-cpus should work with no error

aix	1
aix	1
centos	1
centos	1
debian	1
debian	2
debian-ppc	1
debian-ppc	1
freebsd	1
freebsd	1
hpux	1
hpux	1
hpux-ia64	1
hpux-ia64	1
hurd	1
hurd	1
macosx	1
macosx	2
mandriva	1
mandriva	1
miros	1
miros	1
netbsd	1
netbsd	1
openbsd	1
openbsd	1
openindiana	1
openindiana	1
pidora	1
pidora	1
qnx	1
qnx	1
qnx	parallel: Warning: Cannot figure out number of cpus. Using 1.
qnx	parallel: Warning: Cannot figure out number of cpus. Using 1.
raspbian	1
raspbian	1
redhat	1
redhat	2
scosysv	1
scosysv	1
solaris	2
solaris	2
solaris-x86	1
solaris-x86	1
suse	1
suse	1
tru64	1
tru64	1
ubuntu	1
ubuntu	2
unixware	1
unixware	1
unixware	UX:sh (parScript): ERROR: source: Not found
debian	2
debian	2
debian-ppc	1
debian-ppc	1
freebsd	1
freebsd	1
hurd	1
hurd	1
hpux	1
hpux	1
hpux-ia64	2
hpux-ia64	1
hurd	1
hurd	1
macosx	2
macosx	2
mandriva	1
mandriva	1
miros	1
miros	1
netbsd	1
netbsd	1
openbsd	1
openbsd	1
openindiana	1
openindiana	1
pidora	1
pidora	1
qnx	1
qnx	1
qnx	parallel: Warning: Cannot figure out number of cpus. Using 1.
qnx	parallel: Warning: Cannot figure out number of cpus. Using 1.
raspbian	1
raspbian	1
redhat	2
redhat	2
scosysv	1
scosysv	1
solaris	2
solaris	2
solaris-x86	1
solaris-x86	1
suse	1
suse	1
tru64	1
tru64	1
ubuntu	2
ubuntu	2
unixware	1
unixware	1
unixware	UX:sh (parScript): ERROR: source: Not found
    echo
    echo '### Fails if tmpdir is R/O'
    echo
    par_nonall "stdout parallel --tmpdir / echo ::: test read-only tmp |
	        perl -pe '\$exit += s:/[a-z0-9_]+.arg:/XXXXXXXX.arg:gi; \$exit += s/[0-9][0-9][0-9][0-9]/0000/gi; END { exit not \$exit }' &&
	        echo OK readonly tmp" 2>&1

### Fails if tmpdir is R/O

aix	Error in tempfile() using /XXXXXXXX.arg: Could not create temp file /XXXXXXXX.arg: The file access permissions do not allow the specified action. at ~/bin/parallel line 0000
aix	OK readonly tmp
centos	Error in tempfile() using /XXXXXXXX.arg: Parent directory (/) is not writable
centos	 at ~/bin/parallel line 0000
centos	OK readonly tmp
debian	Error in tempfile() using template /XXXXXXXX.arg: Could not create temp file /XXXXXXXX.arg: Permission denied at ~/bin/parallel line 0000.
debian	OK readonly tmp
debian-ppc	Error in tempfile() using template /XXXXXXXX.arg: Could not create temp file /XXXXXXXX.arg: Permission denied at ~/bin/parallel line 0000.
debian-ppc	OK readonly tmp
freebsd	Error in tempfile() using template /XXXXXXXX.arg: Could not create temp file /XXXXXXXX.arg: Permission denied at ~/bin/parallel line 0000.
freebsd	OK readonly tmp
hurd	Error in tempfile() using template /XXXXXXXX.arg: Could not create temp file /XXXXXXXX.arg: Permission denied at ~/bin/parallel line 0000.
hurd	OK readonly tmp
hpux	Error in tempfile() using /XXXXXXXX.arg: Could not create temp file /XXXXXXXX.arg: Permission denied at ~/bin/parallel line 0000
hpux	OK readonly tmp
hpux-ia64	Error in tempfile() using /XXXXXXXX.arg: Parent directory (/) is not writable
hpux-ia64	 at ~/bin/parallel line 0000
hpux-ia64	OK readonly tmp
hurd	Error in tempfile() using template /XXXXXXXX.arg: Could not create temp file /XXXXXXXX.arg: Permission denied at ~/bin/parallel line 0000.
hurd	OK readonly tmp
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
mandriva	Error in tempfile() using /XXXXXXXX.arg: Could not create temp file /XXXXXXXX.arg: Permission denied at ~/bin/parallel line 0000
mandriva	OK readonly tmp
miros	Error in tempfile() using /XXXXXXXX.arg: Parent directory (/) is not writable
miros	 at ~/bin/parallel line 0000
miros	OK readonly tmp
netbsd	OK readonly tmp
netbsd	Invalid null command.
netbsd	Invalid null command.
openbsd	Error in tempfile() using /XXXXXXXX.arg: Could not create temp file /XXXXXXXX.arg: Permission denied at ~/bin/parallel line 0000
openbsd	OK readonly tmp
openindiana	Error in tempfile() using /XXXXXXXX.arg: Could not create temp file /XXXXXXXX.arg: Permission denied at /u/t/tange/bin/parallel line 0000
openindiana	OK readonly tmp
pidora	Error in tempfile() using template /XXXXXXXX.arg: Could not create temp file /XXXXXXXX.arg: Permission denied at ~/bin/parallel line 0000.
pidora	OK readonly tmp
qnx	Error in tempfile() using /XXXXXXXX.arg: Could not create temp file /XXXXXXXX.arg: Permission denied at ~/bin/parallel line 0000
qnx	OK readonly tmp
raspbian	Error in tempfile() using /XXXXXXXX.arg: Could not create temp file /XXXXXXXX.arg: Permission denied at ~/bin/parallel line 0000
raspbian	OK readonly tmp
redhat	Error in tempfile() using /XXXXXXXX.arg: Could not create temp file /XXXXXXXX.arg: Permission denied at ~/bin/parallel line 0000
redhat	OK readonly tmp
scosysv	Error in tempfile() using /XXXXXXXX.arg: Parent directory (/) is not writable
scosysv	 at ~/bin/parallel line 0000
scosysv	OK readonly tmp
solaris	Error in tempfile() using /XXXXXXXX.arg: Could not create temp file /XXXXXXXX.arg: Permission denied at ~/bin/parallel line 0000
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	OK readonly tmp
suse	Error in tempfile() using /XXXXXXXX.arg: Could not create temp file /XXXXXXXX.arg: Permission denied at ~/bin/parallel line 0000.
suse	OK readonly tmp
tru64	Error in tempfile() using /XXXXXXXX.arg: Parent directory (/) is not writable
tru64	 at ~/bin/parallel line 0000
tru64	OK readonly tmp
ubuntu	Error in tempfile() using template /XXXXXXXX.arg: Could not create temp file /XXXXXXXX.arg: Permission denied at ~/bin/parallel line 0000.
ubuntu	OK readonly tmp
unixware	Error in tempfile() using /XXXXXXXX.arg: Could not create temp file /XXXXXXXX.arg: Permission denied at ~/bin/parallel line 0000
unixware	OK readonly tmp
unixware	UX:sh (parScript): ERROR: source: Not found
    echo
    echo '### Does exporting a bash function make parallel fail?'
    echo 'If login shell is not bash compatible it fails'
    echo
    # http://zmwangx.github.io/blog/2015-11-25-bash-function-exporting-fiasco.html
    par_nonall 'echo test funcA
        funcA() {
            cat <(echo bash only A)
        }
        export -f funcA;
        bin/parallel funcA ::: 1' 2>&1 | LANG=C sort

### Does exporting a bash function make parallel fail?
If login shell is not bash compatible it fails

aix	bash only A
aix	test funcA
centos	bash only A
centos	test funcA
debian	bash only A
debian	test funcA
debian-ppc	bash only A
debian-ppc	test funcA
freebsd	/tmp/parScript: 4: Syntax error: "(" unexpected (expecting word)
freebsd	test funcA
hurd	bash only A
hurd	test funcA
hpux	bash only A
hpux	test funcA
hpux-ia64	bash only A
hpux-ia64	test funcA
hurd	bash only A
hurd	test funcA
macosx	bash only A
macosx	test funcA
mandriva	bash only A
mandriva	test funcA
miros	bash only A
miros	test funcA
netbsd	Badly placed ()'s.
netbsd	Missing name for redirect.
netbsd	export: Command not found.
netbsd	funcA: Command not found.
netbsd	test funcA
netbsd	}: Command not found.
openbsd	bash only A
openbsd	test funcA
openindiana	bash only A
openindiana	test funcA
pidora	bash only A
pidora	test funcA
qnx	/tmp/parScript[4]: syntax error: `(' unexpected
qnx	test funcA
raspbian	bash only A
raspbian	test funcA
redhat	bash only A
redhat	test funcA
scosysv	bash only A
scosysv	test funcA
solaris	bash only A
solaris	test funcA
solaris-x86	bash only A
solaris-x86	test funcA
suse	bash only A
suse	test funcA
tru64	bash only A
tru64	test funcA
ubuntu	bash only A
ubuntu	test funcA
unixware	UX:sh (parScript): ERROR: /tmp/parScript: Syntax error at line 4: `(' unexpected
unixware	UX:sh (parScript): ERROR: source: Not found
unixware	test funcA
    echo
    echo '### Does PARALLEL_SHELL help exporting a bash function'
    echo 'If login shell is not bash compatible it should work'
    echo
    mkdir -p tmp/bin
    cp /bin/bash tmp/bin
    cd tmp
    export PARALLEL_SHELL=bin/bash
    par_nonall 'echo test funcB
        funcB() {
            cat <(echo bash only B)
        }
        export -f funcB
        export PARALLEL_SHELL=bin/bash
        bin/parallel funcB ::: 1' 2>&1

### Does PARALLEL_SHELL help exporting a bash function
If login shell is not bash compatible it should work

aix	test funcB
aix	bash only B
centos	test funcB
centos	bash only B
debian	test funcB
debian	bash only B
debian-ppc	test funcB
debian-ppc	bash only B
freebsd	test funcB
freebsd	bash only B
hurd	test funcB
hurd	bash only B
hpux	test funcB
hpux	bash only B
hpux-ia64	test funcB
hpux-ia64	bash only B
hurd	test funcB
hurd	bash only B
macosx	test funcB
macosx	bash only B
mandriva	test funcB
mandriva	bash only B
miros	test funcB
miros	bash only B
netbsd	test funcB
netbsd	bash only B
netbsd	~/setupenv: line 9: syntax error: unexpected end of file
openbsd	test funcB
openbsd	bash only B
openindiana	test funcB
openindiana	bash only B
pidora	test funcB
pidora	bash only B
qnx	test funcB
qnx	bash only B
qnx	parallel: Warning: Cannot figure out number of cpus. Using 1.
raspbian	test funcB
raspbian	bash only B
redhat	test funcB
redhat	bash only B
scosysv	test funcB
scosysv	bash only B
solaris	test funcB
solaris	bash only B
solaris-x86	test funcB
solaris-x86	bash only B
suse	test funcB
suse	bash only B
tru64	test funcB
tru64	bash only B
ubuntu	test funcB
ubuntu	bash only B
unixware	test funcB
unixware	bash only B
    echo
    echo '### env_parallel --install'
    echo '(bash ksh mksh zsh only)'
    echo
    par_nonall 'bin/env_parallel --install && echo install-OK' 2>&1

### env_parallel --install
(bash ksh mksh zsh only)

aix	Installed env_parallel in:
aix	     ~/.bashrc
aix	     ~/.shrc
aix	     ~/.zshenv
aix	     ~/.config/fish/config.fish
aix	     ~/.kshrc
aix	     ~/.mkshrc
aix	     ~/.profile
aix	     ~/.cshrc
aix	     ~/.tcshrc
aix	install-OK
centos	Installed env_parallel in:
centos	     ~/.bashrc
centos	     ~/.shrc
centos	     ~/.zshenv
centos	     ~/.config/fish/config.fish
centos	     ~/.kshrc
centos	     ~/.mkshrc
centos	     ~/.profile
centos	     ~/.cshrc
centos	     ~/.tcshrc
centos	install-OK
debian	Installed env_parallel in:
debian	     ~/.bashrc
debian	     ~/.shrc
debian	     ~/.zshenv
debian	     ~/.config/fish/config.fish
debian	     ~/.kshrc
debian	     ~/.mkshrc
debian	     ~/.profile
debian	     ~/.cshrc
debian	     ~/.tcshrc
debian	install-OK
debian-ppc	Installed env_parallel in:
debian-ppc	     ~/.bashrc
debian-ppc	     ~/.shrc
debian-ppc	     ~/.zshenv
debian-ppc	     ~/.config/fish/config.fish
debian-ppc	     ~/.kshrc
debian-ppc	     ~/.mkshrc
debian-ppc	     ~/.profile
debian-ppc	     ~/.cshrc
debian-ppc	     ~/.tcshrc
debian-ppc	install-OK
freebsd	Installed env_parallel in:
freebsd	     ~/.bashrc
freebsd	     ~/.shrc
freebsd	     ~/.zshenv
freebsd	     ~/.config/fish/config.fish
freebsd	     ~/.kshrc
freebsd	     ~/.mkshrc
freebsd	     ~/.profile
freebsd	     ~/.cshrc
freebsd	     ~/.tcshrc
freebsd	install-OK
hpux	Installed env_parallel in:
hpux	     ~/.bashrc
hpux	     ~/.shrc
hpux	     ~/.zshenv
hpux	     ~/.config/fish/config.fish
hpux	     ~/.kshrc
hpux	     ~/.mkshrc
hpux	     ~/.profile
hpux	     ~/.cshrc
hpux	     ~/.tcshrc
hpux	install-OK
hpux-ia64	Installed env_parallel in:
hpux-ia64	     ~/.bashrc
hpux-ia64	     ~/.shrc
hpux-ia64	     ~/.zshenv
hpux-ia64	     ~/.config/fish/config.fish
hpux-ia64	     ~/.kshrc
hpux-ia64	     ~/.mkshrc
hpux-ia64	     ~/.profile
hpux-ia64	     ~/.cshrc
hpux-ia64	     ~/.tcshrc
hpux-ia64	install-OK
hpux-ia64	bin/env_parallel: line 33: ~/.cshrc: Permission denied
hurd	Installed env_parallel in:
hurd	     ~/.bashrc
hurd	     ~/.shrc
hurd	     ~/.zshenv
hurd	     ~/.config/fish/config.fish
hurd	     ~/.kshrc
hurd	     ~/.mkshrc
hurd	     ~/.profile
hurd	     ~/.cshrc
hurd	     ~/.tcshrc
hurd	install-OK
hpux-ia64	Installed env_parallel in:
hpux-ia64	     /home/t/tange/.bashrc
hpux-ia64	     /home/t/tange/.shrc
hpux-ia64	     /home/t/tange/.zshenv
hpux-ia64	     /home/t/tange/.config/fish/config.fish
hpux-ia64	     /home/t/tange/.kshrc
hpux-ia64	     /home/t/tange/.mkshrc
hpux-ia64	     /home/t/tange/.profile
hpux-ia64	     /home/t/tange/.cshrc
hpux-ia64	     /home/t/tange/.tcshrc
hpux-ia64	install-OK
hpux-ia64	bin/env_parallel: line 33: /home/t/tange/.cshrc: Permission denied
macosx	Installed env_parallel in:
macosx	     /Users/tange/.bashrc
macosx	     /Users/tange/.shrc
macosx	     /Users/tange/.zshenv
macosx	     /Users/tange/.config/fish/config.fish
macosx	     /Users/tange/.kshrc
macosx	     /Users/tange/.mkshrc
macosx	     /Users/tange/.profile
macosx	     /Users/tange/.cshrc
macosx	     /Users/tange/.tcshrc
macosx	install-OK
mandriva	Installed env_parallel in:
mandriva	     ~/.bashrc
mandriva	     ~/.shrc
mandriva	     ~/.zshenv
mandriva	     ~/.config/fish/config.fish
mandriva	     ~/.kshrc
mandriva	     ~/.mkshrc
mandriva	     ~/.profile
mandriva	     ~/.cshrc
mandriva	     ~/.tcshrc
mandriva	install-OK
miros	Installed env_parallel in:
miros	     ~/.bashrc
miros	     ~/.shrc
miros	     ~/.zshenv
miros	     ~/.config/fish/config.fish
miros	     ~/.kshrc
miros	     ~/.mkshrc
miros	     ~/.profile
miros	     ~/.cshrc
miros	     ~/.tcshrc
miros	install-OK
netbsd	Installed env_parallel in:
netbsd	     ~/.bashrc
netbsd	     ~/.shrc
netbsd	     ~/.zshenv
netbsd	     ~/.config/fish/config.fish
netbsd	     ~/.kshrc
netbsd	     ~/.mkshrc
netbsd	     ~/.profile
netbsd	     ~/.cshrc
netbsd	     ~/.tcshrc
netbsd	install-OK
openbsd	Installed env_parallel in:
openbsd	     ~/.bashrc
openbsd	     ~/.shrc
openbsd	     ~/.zshenv
openbsd	     ~/.config/fish/config.fish
openbsd	     ~/.kshrc
openbsd	     ~/.mkshrc
openbsd	     ~/.profile
openbsd	     ~/.cshrc
openbsd	     ~/.tcshrc
openbsd	install-OK
openindiana	Installed env_parallel in:
openindiana	     /u/t/tange/.bashrc
openindiana	     /u/t/tange/.shrc
openindiana	     /u/t/tange/.zshenv
openindiana	     /u/t/tange/.config/fish/config.fish
openindiana	     /u/t/tange/.kshrc
openindiana	     /u/t/tange/.mkshrc
openindiana	     /u/t/tange/.profile
openindiana	     /u/t/tange/.cshrc
openindiana	     /u/t/tange/.tcshrc
openindiana	install-OK
pidora	Installed env_parallel in:
pidora	     ~/.bashrc
pidora	     ~/.shrc
pidora	     ~/.zshenv
pidora	     ~/.config/fish/config.fish
pidora	     ~/.kshrc
pidora	     ~/.mkshrc
pidora	     ~/.profile
pidora	     ~/.cshrc
pidora	     ~/.tcshrc
pidora	install-OK
qnx	Installed env_parallel in:
qnx	     ~/.bashrc
qnx	     ~/.shrc
qnx	     ~/.zshenv
qnx	     ~/.config/fish/config.fish
qnx	     ~/.kshrc
qnx	     ~/.mkshrc
qnx	     ~/.profile
qnx	     ~/.cshrc
qnx	     ~/.tcshrc
qnx	install-OK
raspbian	Installed env_parallel in:
raspbian	     ~/.bashrc
raspbian	     ~/.shrc
raspbian	     ~/.zshenv
raspbian	     ~/.config/fish/config.fish
raspbian	     ~/.kshrc
raspbian	     ~/.mkshrc
raspbian	     ~/.profile
raspbian	     ~/.cshrc
raspbian	     ~/.tcshrc
raspbian	install-OK
redhat	Installed env_parallel in:
redhat	     ~/.bashrc
redhat	     ~/.shrc
redhat	     ~/.zshenv
redhat	     ~/.config/fish/config.fish
redhat	     ~/.kshrc
redhat	     ~/.mkshrc
redhat	     ~/.profile
redhat	     ~/.cshrc
redhat	     ~/.tcshrc
redhat	install-OK
scosysv	Installed env_parallel in:
scosysv	     ~/.bashrc
scosysv	     ~/.shrc
scosysv	     ~/.zshenv
scosysv	     ~/.config/fish/config.fish
scosysv	     ~/.kshrc
scosysv	     ~/.mkshrc
scosysv	     ~/.profile
scosysv	     ~/.cshrc
scosysv	     ~/.tcshrc
scosysv	install-OK
solaris	Installed env_parallel in:
solaris	     ~/.bashrc
solaris	     ~/.shrc
solaris	     ~/.zshenv
solaris	     ~/.config/fish/config.fish
solaris	     ~/.kshrc
solaris	     ~/.mkshrc
solaris	     ~/.profile
solaris	     ~/.cshrc
solaris	     ~/.tcshrc
solaris	install-OK
solaris-x86	Installed env_parallel in:
solaris-x86	     ~/.bashrc
solaris-x86	     ~/.shrc
solaris-x86	     ~/.zshenv
solaris-x86	     ~/.config/fish/config.fish
solaris-x86	     ~/.kshrc
solaris-x86	     ~/.mkshrc
solaris-x86	     ~/.profile
solaris-x86	     ~/.cshrc
solaris-x86	     ~/.tcshrc
solaris-x86	install-OK
suse	Installed env_parallel in:
suse	     ~/.bashrc
suse	     ~/.shrc
suse	     ~/.zshenv
suse	     ~/.config/fish/config.fish
suse	     ~/.kshrc
suse	     ~/.mkshrc
suse	     ~/.profile
suse	     ~/.cshrc
suse	     ~/.tcshrc
suse	install-OK
tru64	Installed env_parallel in:
tru64	     ~/.bashrc
tru64	     ~/.shrc
tru64	     ~/.zshenv
tru64	     ~/.config/fish/config.fish
tru64	     ~/.kshrc
tru64	     ~/.mkshrc
tru64	     ~/.profile
tru64	     ~/.cshrc
tru64	     ~/.tcshrc
tru64	install-OK
ubuntu	Installed env_parallel in:
ubuntu	     ~/.bashrc
ubuntu	     ~/.shrc
ubuntu	     ~/.zshenv
ubuntu	     ~/.config/fish/config.fish
ubuntu	     ~/.kshrc
ubuntu	     ~/.mkshrc
ubuntu	     ~/.profile
ubuntu	     ~/.cshrc
ubuntu	     ~/.tcshrc
ubuntu	install-OK
unixware	Installed env_parallel in:
unixware	     ~/.bashrc
unixware	     ~/.shrc
unixware	     ~/.zshenv
unixware	     ~/.config/fish/config.fish
unixware	     ~/.kshrc
unixware	     ~/.mkshrc
unixware	     ~/.profile
unixware	     ~/.cshrc
unixware	     ~/.tcshrc
unixware	install-OK
unixware	UX:sh (parScript): ERROR: source: Not found
    echo
    echo '### env_parallel echo env_parallel ::: run-OK'
    echo '(bash ksh mksh zsh only)'
    echo
    par_nonall 'env_parallel echo env_parallel ::: run-OK' 2>&1

### env_parallel echo env_parallel ::: run-OK
(bash ksh mksh zsh only)

aix	env_parallel run-OK
centos	env_parallel run-OK
debian	env_parallel run-OK
debian-ppc	env_parallel run-OK
freebsd	env_parallel run-OK
hurd	env_parallel run-OK
hpux	env_parallel run-OK
hpux-ia64	env_parallel run-OK
hurd	env_parallel run-OK
macosx	env_parallel run-OK
mandriva	env_parallel run-OK
miros	env_parallel run-OK
netbsd	env_parallel run-OK
openbsd	env_parallel run-OK
openindiana	env_parallel run-OK
pidora	env_parallel run-OK
qnx	env_parallel run-OK
qnx	/tmp/parScript[3]: compgen: cannot execute - No such file or directory
qnx	/tmp/parScript[3]: compgen: cannot execute - No such file or directory
qnx	/tmp/parScript[3]: compgen: cannot execute - No such file or directory
qnx	parallel: Warning: Cannot figure out number of cpus. Using 1.
qnx	/bin/sh: shopt: cannot execute - No such file or directory
raspbian	env_parallel run-OK
redhat	env_parallel run-OK
scosysv	env_parallel run-OK
solaris	env_parallel run-OK
solaris-x86	env_parallel run-OK
suse	env_parallel run-OK
tru64	env_parallel run-OK
ubuntu	env_parallel run-OK
unixware	env_parallel run-OK
unixware	UX:sh (parScript): ERROR: source: Not found
    echo
    echo '### env_parallel echo reading from process substitution :::: <(echo OK)'
    echo '(bash ksh mksh zsh only)'
    echo
    # csh on NetBSD does not support process substitution 
    par_nonall 'env_parallel echo reading from process substitution :::: <(echo OK)' 2>&1 | 
	grep -v ': /tmp/.*: No such file or directory'

### env_parallel echo reading from process substitution :::: <(echo OK)
(bash ksh mksh zsh only)

aix	reading from process substitution OK
centos	reading from process substitution OK
debian	reading from process substitution OK
debian-ppc	reading from process substitution OK
freebsd	/tmp/parScript: 2: Syntax error: "(" unexpected (expecting word)
hurd	reading from process substitution OK
hpux	reading from process substitution OK
hpux-ia64	reading from process substitution OK
hurd	reading from process substitution OK
macosx	reading from process substitution OK
mandriva	reading from process substitution OK
miros	reading from process substitution OK
netbsd	Missing name for redirect.
netbsd	Missing name for redirect.
netbsd	parallel: Error: Cannot open input file `<': No such file or directory.
openbsd	reading from process substitution OK
openindiana	reading from process substitution OK
pidora	reading from process substitution OK
qnx	/tmp/parScript[2]: syntax error: `(' unexpected
raspbian	reading from process substitution OK
redhat	reading from process substitution OK
scosysv	reading from process substitution OK
solaris	reading from process substitution OK
solaris-x86	reading from process substitution OK
suse	reading from process substitution OK
tru64	reading from process substitution OK
ubuntu	reading from process substitution OK
unixware	UX:sh (parScript): ERROR: /tmp/parScript: Syntax error at line 2: `(' unexpected
    echo
    echo '### Test empty command name in process list'
    echo '(bash ksh mksh zsh only)'
    echo
    test_empty_cmd() {
	echo '### Test if empty command name in process list causes problems'
	perl -e '$0=" ";sleep 1000' &
        pid=$!
	parallel echo ::: OK_with_empty_cmd
        kill $pid
    }
    export -f test_empty_cmd
    export PARALLEL_SHELL=bin/bash
    PARALLEL='--env test_empty_cmd' par_nonall test_empty_cmd 2>&1

### Test empty command name in process list
(bash ksh mksh zsh only)

aix	### Test if empty command name in process list causes problems
aix	OK_with_empty_cmd
centos	### Test if empty command name in process list causes problems
centos	OK_with_empty_cmd
debian	### Test if empty command name in process list causes problems
debian	OK_with_empty_cmd
debian-ppc	### Test if empty command name in process list causes problems
debian-ppc	OK_with_empty_cmd
freebsd	### Test if empty command name in process list causes problems
freebsd	OK_with_empty_cmd
hurd	### Test if empty command name in process list causes problems
hurd	OK_with_empty_cmd
hpux	### Test if empty command name in process list causes problems
hpux	OK_with_empty_cmd
hpux-ia64	### Test if empty command name in process list causes problems
hpux-ia64	OK_with_empty_cmd
hurd	### Test if empty command name in process list causes problems
hurd	OK_with_empty_cmd
macosx	### Test if empty command name in process list causes problems
macosx	OK_with_empty_cmd
mandriva	### Test if empty command name in process list causes problems
mandriva	OK_with_empty_cmd
miros	### Test if empty command name in process list causes problems
miros	OK_with_empty_cmd
netbsd	### Test if empty command name in process list causes problems
netbsd	OK_with_empty_cmd
netbsd	~/setupenv: line 9: syntax error: unexpected end of file
openbsd	### Test if empty command name in process list causes problems
openbsd	OK_with_empty_cmd
openindiana	### Test if empty command name in process list causes problems
openindiana	OK_with_empty_cmd
pidora	### Test if empty command name in process list causes problems
pidora	OK_with_empty_cmd
qnx	### Test if empty command name in process list causes problems
qnx	OK_with_empty_cmd
qnx	parallel: Warning: Cannot figure out number of cpus. Using 1.
raspbian	### Test if empty command name in process list causes problems
raspbian	OK_with_empty_cmd
redhat	### Test if empty command name in process list causes problems
redhat	OK_with_empty_cmd
scosysv	### Test if empty command name in process list causes problems
scosysv	OK_with_empty_cmd
solaris	### Test if empty command name in process list causes problems
solaris	OK_with_empty_cmd
solaris-x86	### Test if empty command name in process list causes problems
solaris-x86	OK_with_empty_cmd
suse	### Test if empty command name in process list causes problems
suse	OK_with_empty_cmd
tru64	### Test if empty command name in process list causes problems
tru64	OK_with_empty_cmd
ubuntu	### Test if empty command name in process list causes problems
ubuntu	OK_with_empty_cmd
unixware	### Test if empty command name in process list causes problems
unixware	OK_with_empty_cmd
    echo
    echo '### parset arr seq ::: 2 3 4'
    echo '(bash ksh mksh zsh only)'
    echo
    par_nonall 'parset arr seq ::: 2 3 4; echo ${arr[*]}' 2>&1
    echo '### env_parset arr seq ::: 2 3 4'
    par_nonall 'start=2;env_parset arr seq \$start ::: 2 3 4; echo ${arr[*]}' 2>&1

### parset arr seq ::: 2 3 4
(bash ksh mksh zsh only)

aix	1 2 1 2 3 1 2 3 4
centos	1 2 1 2 3 1 2 3 4
debian	1 2 1 2 3 1 2 3 4
debian-ppc	1 2 1 2 3 1 2 3 4
freebsd	eval: 1: Syntax error: word unexpected (expecting ")")
hurd	1 2 1 2 3 1 2 3 4
hpux	
hpux-ia64	1 2 1 2 3 1 2 3 4
hurd	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
miros	1 2 1 2 3 1 2 3 4
netbsd	parset: Command not found.
netbsd	arr: Undefined variable.
openbsd	1 2 1 2 3 1 2 3 4
openindiana	1 2 1 2 3 1 2 3 4
pidora	1 2 1 2 3 1 2 3 4
qnx	
qnx	parset: Warning: Cannot figure out number of cpus. Using 1.
qnx	/tmp/parScript: syntax error: `(' unexpected
raspbian	1 2 1 2 3 1 2 3 4
redhat	1 2 1 2 3 1 2 3 4
scosysv	1 2 1 2 3 1 2 3 4
solaris	1 2 1 2 3 1 2 3 4
solaris-x86	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
ubuntu	1 2 1 2 3 1 2 3 4
unixware	UX:sh (parScript): ERROR: source: Not found
unixware	UX:sh (parScript): ERROR: typeset: Not found
unixware	UX:sh (parScript): ERROR: /tmp/parScript: Syntax error at line 1: `arr=' unexpected
### env_parset arr seq ::: 2 3 4
aix	2 2 3 2 3 4
centos	2 2 3 2 3 4
debian	2 2 3 2 3 4
debian-ppc	2 2 3 2 3 4
freebsd	eval: 1: Syntax error: word unexpected (expecting ")")
hurd	2 2 3 2 3 4
hpux	
hpux-ia64	1 2 1 2 1 2
hurd	2 2 3 2 3 4
macosx	2 2 3 2 3 4
mandriva	2 2 3 2 3 4
miros	1 2 1 2 1 2
netbsd	start=2: Command not found.
netbsd	env_parset: Command not found.
netbsd	arr: Undefined variable.
openbsd	2 3 3 4 4 5
openindiana	2 2 3 2 3 4
pidora	2 2 3 2 3 4
qnx	
qnx	/tmp/parScript[3]: compgen: cannot execute - No such file or directory
qnx	/tmp/parScript[3]: compgen: cannot execute - No such file or directory
qnx	/tmp/parScript[3]: compgen: cannot execute - No such file or directory
qnx	parset: Warning: Cannot figure out number of cpus. Using 1.
qnx	/bin/sh: shopt: cannot execute - No such file or directory
qnx	/bin/sh: shopt: cannot execute - No such file or directory
qnx	/bin/sh: shopt: cannot execute - No such file or directory
qnx	/tmp/parScript: syntax error: `(' unexpected
raspbian	2 2 3 2 3 4
redhat	2 2 3 2 3 4
scosysv	2 2 3 2 3 4
solaris	1 2 1 2 1 2
solaris-x86	2 2 3 2 3 4
suse	2 2 3 2 3 4
tru64	2 2 3 2 3 4
ubuntu	2 2 3 2 3 4
unixware	UX:sh (parScript): ERROR: source: Not found
unixware	UX:sh (parScript): ERROR: typeset: Not found
unixware	UX:sh (parScript): ERROR: /tmp/parScript: Syntax error at line 1: `arr=' unexpected
    echo
    echo '### parset var1,var2,var3 seq ::: 2 3 4'
    echo '(bash ksh mksh zsh ash dash only)'
    echo
    par_nonall 'parset var1,var2,var3 seq ::: 2 3 4; echo $var1,$var2,$var3' 2>&1
    echo '### env_parset var1,var2,var3 seq ::: 2 3 4'
    par_nonall 'start=2; env_parset var1,var2,var3 seq \$start ::: 2 3 4; echo $var1,$var2,$var3' 2>&1


### parset var1,var2,var3 seq ::: 2 3 4
(bash ksh mksh zsh ash dash only)

aix	1 2,1 2 3,1 2 3 4
centos	1 2,1 2 3,1 2 3 4
debian	1 2,1 2 3,1 2 3 4
debian-ppc	1 2,1 2 3,1 2 3 4
freebsd	1 2,1 2 3,1 2 3 4
hurd	1 2,1 2 3,1 2 3 4
hpux	,,
hpux-ia64	1 2,1 2 3,1 2 3 4
hurd	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
miros	1 2,1 2 3,1 2 3 4
netbsd	parset: Command not found.
netbsd	var1: Undefined variable.
openbsd	1 2,1 2 3,1 2 3 4
openindiana	1 2,1 2 3,1 2 3 4
pidora	1 2,1 2 3,1 2 3 4
qnx	1 2,1 2 3,1 2 3 4
qnx	parset: Warning: Cannot figure out number of cpus. Using 1.
raspbian	1 2,1 2 3,1 2 3 4
redhat	1 2,1 2 3,1 2 3 4
scosysv	1 2,1 2 3,1 2 3 4
solaris	1 2,1 2 3,1 2 3 4
solaris-x86	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
ubuntu	1 2,1 2 3,1 2 3 4
unixware	1 2,1 2 3,1 2 3 4
unixware	UX:sh (parScript): ERROR: source: Not found
unixware	UX:sh (parScript): ERROR: typeset: Not found
### env_parset var1,var2,var3 seq ::: 2 3 4
aix	2,2 3,2 3 4
centos	2,2 3,2 3 4
debian	2,2 3,2 3 4
debian-ppc	2,2 3,2 3 4
freebsd	2,2 3,2 3 4
hpux	,,
hpux-ia64	1 2,1 2,1 2
hurd	2,2 3,2 3 4
macosx	2,2 3,2 3 4
mandriva	2,2 3,2 3 4
miros	1 2,1 2,1 2
netbsd	start=2: Command not found.
netbsd	env_parset: Command not found.
netbsd	var1: Undefined variable.
openbsd	2 3,3 4,4 5
openindiana	2,2 3,2 3 4
pidora	2,2 3,2 3 4
qnx	1 2,1 2 3,1 2 3 4
qnx	/tmp/parScript[3]: compgen: cannot execute - No such file or directory
qnx	/tmp/parScript[3]: compgen: cannot execute - No such file or directory
qnx	/tmp/parScript[3]: compgen: cannot execute - No such file or directory
qnx	parset: Warning: Cannot figure out number of cpus. Using 1.
qnx	/bin/sh: shopt: cannot execute - No such file or directory
qnx	/bin/sh: shopt: cannot execute - No such file or directory
qnx	/bin/sh: shopt: cannot execute - No such file or directory
raspbian	2,2 3,2 3 4
redhat	2,2 3,2 3 4
scosysv	2,2 3,2 3 4
solaris	1 2,1 2,1 2
solaris-x86	2,2 3,2 3 4
suse	2,2 3,2 3 4
tru64	2,2 3,2 3 4
ubuntu	2,2 3,2 3 4
unixware	2,2 3,2 3 4
unixware	UX:sh (parScript): ERROR: source: Not found
unixware	UX:sh (parScript): ERROR: typeset: Not found