mirror of
https://git.savannah.gnu.org/git/parallel.git
synced 2024-11-22 14:07:55 +00:00
Released as 20180522 ('GreatMarchOfReturn')
This commit is contained in:
parent
9b2012f021
commit
87b9d9fe29
33
NEWS
33
NEWS
|
@ -1,3 +1,36 @@
|
||||||
|
20180522
|
||||||
|
|
||||||
|
* --tty allows for more programs accessing /dev/tty in parallel. Some
|
||||||
|
programs require tty access without using it.
|
||||||
|
|
||||||
|
* env_parallel --session will record names in current environment in
|
||||||
|
$PARALLEL_IGNORED_NAMES and exit. It is only used with env_parallel,
|
||||||
|
and can work like --record-env but in a single session.
|
||||||
|
|
||||||
|
* 35 day course: Linux shell scripting and text processing for big
|
||||||
|
data https://comquest.in/training
|
||||||
|
|
||||||
|
* How To Use Your Entire CPU In Bash With Parallel
|
||||||
|
https://bash-prompt.net/guides/parallell-bash/
|
||||||
|
|
||||||
|
* An easy way to run parallel jobs on Stampede2
|
||||||
|
https://blog.uta.edu/xus/2017/09/29/an-easy-way-to-run-parallel-jobs-on-stampede2/
|
||||||
|
|
||||||
|
* Get more done at the Linux command line with GNU Parallel
|
||||||
|
https://opensource.com/article/18/5/gnu-parallel
|
||||||
|
|
||||||
|
* Save Time with Modern Search Techniques
|
||||||
|
https://www.sans.org/summit-archives/file/summit-archive-1524582079.pdf
|
||||||
|
|
||||||
|
* GNU Parallel: haz más cosas simultáneamente en el terminal
|
||||||
|
https://blog.desdelinux.net/gnu-parallel-haz-mas-cosas-simultaneamente-en-el-terminal/
|
||||||
|
|
||||||
|
* 「今日から使い切る」ための GNU Parallelによる並列処理入門
|
||||||
|
https://www.slideshare.net/koji_matsuda/gnu-parallel
|
||||||
|
|
||||||
|
* Bug fixes and man page updates.
|
||||||
|
|
||||||
|
|
||||||
20180422
|
20180422
|
||||||
|
|
||||||
* --csv makes GNU Parallel parse the input sources as CSV. When used
|
* --csv makes GNU Parallel parse the input sources as CSV. When used
|
||||||
|
|
12
README
12
README
|
@ -44,9 +44,9 @@ document.
|
||||||
|
|
||||||
Full installation of GNU Parallel is as simple as:
|
Full installation of GNU Parallel is as simple as:
|
||||||
|
|
||||||
wget https://ftpmirror.gnu.org/parallel/parallel-20180422.tar.bz2
|
wget https://ftpmirror.gnu.org/parallel/parallel-20180522.tar.bz2
|
||||||
bzip2 -dc parallel-20180422.tar.bz2 | tar xvf -
|
bzip2 -dc parallel-20180522.tar.bz2 | tar xvf -
|
||||||
cd parallel-20180422
|
cd parallel-20180522
|
||||||
./configure && make && sudo make install
|
./configure && make && sudo make install
|
||||||
|
|
||||||
|
|
||||||
|
@ -55,9 +55,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
|
If you are not root you can add ~/bin to your path and install in
|
||||||
~/bin and ~/share:
|
~/bin and ~/share:
|
||||||
|
|
||||||
wget https://ftpmirror.gnu.org/parallel/parallel-20180422.tar.bz2
|
wget https://ftpmirror.gnu.org/parallel/parallel-20180522.tar.bz2
|
||||||
bzip2 -dc parallel-20180422.tar.bz2 | tar xvf -
|
bzip2 -dc parallel-20180522.tar.bz2 | tar xvf -
|
||||||
cd parallel-20180422
|
cd parallel-20180522
|
||||||
./configure --prefix=$HOME && make && make install
|
./configure --prefix=$HOME && make && make install
|
||||||
|
|
||||||
Or if your system lacks 'make' you can simply copy src/parallel
|
Or if your system lacks 'make' you can simply copy src/parallel
|
||||||
|
|
20
configure
vendored
20
configure
vendored
|
@ -1,6 +1,6 @@
|
||||||
#! /bin/sh
|
#! /bin/sh
|
||||||
# Guess values for system-dependent variables and create Makefiles.
|
# Guess values for system-dependent variables and create Makefiles.
|
||||||
# Generated by GNU Autoconf 2.69 for parallel 20180422.
|
# Generated by GNU Autoconf 2.69 for parallel 20180522.
|
||||||
#
|
#
|
||||||
# Report bugs to <bug-parallel@gnu.org>.
|
# Report bugs to <bug-parallel@gnu.org>.
|
||||||
#
|
#
|
||||||
|
@ -579,8 +579,8 @@ MAKEFLAGS=
|
||||||
# Identity of this package.
|
# Identity of this package.
|
||||||
PACKAGE_NAME='parallel'
|
PACKAGE_NAME='parallel'
|
||||||
PACKAGE_TARNAME='parallel'
|
PACKAGE_TARNAME='parallel'
|
||||||
PACKAGE_VERSION='20180422'
|
PACKAGE_VERSION='20180522'
|
||||||
PACKAGE_STRING='parallel 20180422'
|
PACKAGE_STRING='parallel 20180522'
|
||||||
PACKAGE_BUGREPORT='bug-parallel@gnu.org'
|
PACKAGE_BUGREPORT='bug-parallel@gnu.org'
|
||||||
PACKAGE_URL=''
|
PACKAGE_URL=''
|
||||||
|
|
||||||
|
@ -1214,7 +1214,7 @@ if test "$ac_init_help" = "long"; then
|
||||||
# Omit some internal or obsolete options to make the list less imposing.
|
# Omit some internal or obsolete options to make the list less imposing.
|
||||||
# This message is too long to be a string in the A/UX 3.1 sh.
|
# This message is too long to be a string in the A/UX 3.1 sh.
|
||||||
cat <<_ACEOF
|
cat <<_ACEOF
|
||||||
\`configure' configures parallel 20180422 to adapt to many kinds of systems.
|
\`configure' configures parallel 20180522 to adapt to many kinds of systems.
|
||||||
|
|
||||||
Usage: $0 [OPTION]... [VAR=VALUE]...
|
Usage: $0 [OPTION]... [VAR=VALUE]...
|
||||||
|
|
||||||
|
@ -1281,7 +1281,7 @@ fi
|
||||||
|
|
||||||
if test -n "$ac_init_help"; then
|
if test -n "$ac_init_help"; then
|
||||||
case $ac_init_help in
|
case $ac_init_help in
|
||||||
short | recursive ) echo "Configuration of parallel 20180422:";;
|
short | recursive ) echo "Configuration of parallel 20180522:";;
|
||||||
esac
|
esac
|
||||||
cat <<\_ACEOF
|
cat <<\_ACEOF
|
||||||
|
|
||||||
|
@ -1357,7 +1357,7 @@ fi
|
||||||
test -n "$ac_init_help" && exit $ac_status
|
test -n "$ac_init_help" && exit $ac_status
|
||||||
if $ac_init_version; then
|
if $ac_init_version; then
|
||||||
cat <<\_ACEOF
|
cat <<\_ACEOF
|
||||||
parallel configure 20180422
|
parallel configure 20180522
|
||||||
generated by GNU Autoconf 2.69
|
generated by GNU Autoconf 2.69
|
||||||
|
|
||||||
Copyright (C) 2012 Free Software Foundation, Inc.
|
Copyright (C) 2012 Free Software Foundation, Inc.
|
||||||
|
@ -1374,7 +1374,7 @@ cat >config.log <<_ACEOF
|
||||||
This file contains any messages produced by compilers while
|
This file contains any messages produced by compilers while
|
||||||
running configure, to aid debugging if configure makes a mistake.
|
running configure, to aid debugging if configure makes a mistake.
|
||||||
|
|
||||||
It was created by parallel $as_me 20180422, which was
|
It was created by parallel $as_me 20180522, which was
|
||||||
generated by GNU Autoconf 2.69. Invocation command line was
|
generated by GNU Autoconf 2.69. Invocation command line was
|
||||||
|
|
||||||
$ $0 $@
|
$ $0 $@
|
||||||
|
@ -2237,7 +2237,7 @@ fi
|
||||||
|
|
||||||
# Define the identity of the package.
|
# Define the identity of the package.
|
||||||
PACKAGE='parallel'
|
PACKAGE='parallel'
|
||||||
VERSION='20180422'
|
VERSION='20180522'
|
||||||
|
|
||||||
|
|
||||||
cat >>confdefs.h <<_ACEOF
|
cat >>confdefs.h <<_ACEOF
|
||||||
|
@ -2880,7 +2880,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
|
||||||
# report actual input values of CONFIG_FILES etc. instead of their
|
# report actual input values of CONFIG_FILES etc. instead of their
|
||||||
# values after options handling.
|
# values after options handling.
|
||||||
ac_log="
|
ac_log="
|
||||||
This file was extended by parallel $as_me 20180422, which was
|
This file was extended by parallel $as_me 20180522, which was
|
||||||
generated by GNU Autoconf 2.69. Invocation command line was
|
generated by GNU Autoconf 2.69. Invocation command line was
|
||||||
|
|
||||||
CONFIG_FILES = $CONFIG_FILES
|
CONFIG_FILES = $CONFIG_FILES
|
||||||
|
@ -2942,7 +2942,7 @@ _ACEOF
|
||||||
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
|
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
|
||||||
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
|
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
|
||||||
ac_cs_version="\\
|
ac_cs_version="\\
|
||||||
parallel config.status 20180422
|
parallel config.status 20180522
|
||||||
configured by $0, generated by GNU Autoconf 2.69,
|
configured by $0, generated by GNU Autoconf 2.69,
|
||||||
with options \\"\$ac_cs_config\\"
|
with options \\"\$ac_cs_config\\"
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
AC_INIT([parallel], [20180422], [bug-parallel@gnu.org])
|
AC_INIT([parallel], [20180522], [bug-parallel@gnu.org])
|
||||||
AM_INIT_AUTOMAKE([-Wall -Werror foreign])
|
AM_INIT_AUTOMAKE([-Wall -Werror foreign])
|
||||||
AC_CONFIG_HEADERS([config.h])
|
AC_CONFIG_HEADERS([config.h])
|
||||||
AC_CONFIG_FILES([
|
AC_CONFIG_FILES([
|
||||||
|
|
|
@ -220,6 +220,9 @@ https://bash-prompt.net/guides/parallell-bash/
|
||||||
https://blog.uta.edu/xus/2017/09/29/an-easy-way-to-run-parallel-jobs-on-stampede2/
|
https://blog.uta.edu/xus/2017/09/29/an-easy-way-to-run-parallel-jobs-on-stampede2/
|
||||||
|
|
||||||
https://opensource.com/article/18/5/gnu-parallel
|
https://opensource.com/article/18/5/gnu-parallel
|
||||||
|
|
||||||
|
|
||||||
|
GNU Parallel: haz más cosas simultáneamente en el terminal
|
||||||
https://blog.desdelinux.net/gnu-parallel-haz-mas-cosas-simultaneamente-en-el-terminal/
|
https://blog.desdelinux.net/gnu-parallel-haz-mas-cosas-simultaneamente-en-el-terminal/
|
||||||
https://www.sans.org/summit-archives/file/summit-archive-1524582079.pdf
|
https://www.sans.org/summit-archives/file/summit-archive-1524582079.pdf
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
<directory name="parallel" rev="220" srcmd5="daa6220a295b073bc0b1ef06cfc40094" vrev="1">
|
<directory name="parallel" rev="221" srcmd5="2a59ca9bd049f2651990628f4652146f" vrev="1">
|
||||||
<entry md5="24fd1167f3c45f22bea8588cdbdb5b5a" mtime="1524431598" name="parallel-20180422.tar.bz2" size="1745964" />
|
<entry md5="e5e3a5c63ae38df0d7f01a47b7273d80" mtime="1527030250" name="parallel-20180522.tar.bz2" size="1758080" />
|
||||||
<entry md5="8c18c6cbcc0554eec175850097aa36e1" mtime="1524431598" name="parallel.spec" size="4666" />
|
<entry md5="4b49188d16aa962e3c3c3a692e7095cc" mtime="1527030250" name="parallel.spec" size="4666" />
|
||||||
<entry md5="75ab8eb06cabba7e19fd971fc54de862" mtime="1524431599" name="parallel_20180422.dsc" size="556" />
|
<entry md5="574a88b53a981480cf908707c52233bc" mtime="1527030251" name="parallel_20180522.dsc" size="556" />
|
||||||
<entry md5="e76e808b96e7a45a919567010e43e7f9" mtime="1524431599" name="parallel_20180422.tar.gz" size="1951673" />
|
<entry md5="43dbfae83b547314f1288c7ec02038b4" mtime="1527030251" name="parallel_20180522.tar.gz" size="1965570" />
|
||||||
</directory>
|
</directory>
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
Summary: Shell tool for executing jobs in parallel
|
Summary: Shell tool for executing jobs in parallel
|
||||||
Name: parallel
|
Name: parallel
|
||||||
Version: 20180422
|
Version: 20180522
|
||||||
Release: 1.2
|
Release: 1.2
|
||||||
License: GPL
|
License: GPL
|
||||||
Group: Productivity/File utilities
|
Group: Productivity/File utilities
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
Summary: Shell tool for executing jobs in parallel
|
Summary: Shell tool for executing jobs in parallel
|
||||||
Name: parallel
|
Name: parallel
|
||||||
Version: 20180422
|
Version: 20180522
|
||||||
Release: 1.2
|
Release: 1.2
|
||||||
License: GPL
|
License: GPL
|
||||||
Group: Productivity/File utilities
|
Group: Productivity/File utilities
|
||||||
|
|
|
@ -24,7 +24,7 @@
|
||||||
use strict;
|
use strict;
|
||||||
use Getopt::Long;
|
use Getopt::Long;
|
||||||
$Global::progname="niceload";
|
$Global::progname="niceload";
|
||||||
$Global::version = 20180423;
|
$Global::version = 20180522;
|
||||||
Getopt::Long::Configure("bundling","require_order");
|
Getopt::Long::Configure("bundling","require_order");
|
||||||
get_options_from_array(\@ARGV) || die_usage();
|
get_options_from_array(\@ARGV) || die_usage();
|
||||||
if($opt::version) {
|
if($opt::version) {
|
||||||
|
|
|
@ -1450,7 +1450,7 @@ sub check_invalid_option_combinations {
|
||||||
|
|
||||||
sub init_globals {
|
sub init_globals {
|
||||||
# Defaults:
|
# Defaults:
|
||||||
$Global::version = 20180423;
|
$Global::version = 20180522;
|
||||||
$Global::progname = 'parallel';
|
$Global::progname = 'parallel';
|
||||||
$Global::infinity = 2**31;
|
$Global::infinity = 2**31;
|
||||||
$Global::debug = 0;
|
$Global::debug = 0;
|
||||||
|
|
2
src/sql
2
src/sql
|
@ -576,7 +576,7 @@ $Global::Initfile && unlink $Global::Initfile;
|
||||||
exit ($err);
|
exit ($err);
|
||||||
|
|
||||||
sub parse_options {
|
sub parse_options {
|
||||||
$Global::version = 20180423;
|
$Global::version = 20180522;
|
||||||
$Global::progname = 'sql';
|
$Global::progname = 'sql';
|
||||||
|
|
||||||
# This must be done first as this may exec myself
|
# This must be done first as this may exec myself
|
||||||
|
|
|
@ -20,7 +20,6 @@ polarhome: polar
|
||||||
true
|
true
|
||||||
|
|
||||||
polar: ../src/parallel tests-to-run/*polar* wanted-results/*polar* prereqlocal
|
polar: ../src/parallel tests-to-run/*polar* wanted-results/*polar* prereqlocal
|
||||||
make stopvm
|
|
||||||
time bash Start.sh polar NONE || true
|
time bash Start.sh polar NONE || true
|
||||||
touch ~/.parallel/will-cite
|
touch ~/.parallel/will-cite
|
||||||
|
|
||||||
|
|
|
@ -1,18 +1,23 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
# Check servers up on http://www.polarhome.com/service/status/
|
# Check servers up on http://www.polarhome.com/service/status/
|
||||||
|
unset TIMEOUT
|
||||||
|
. `which env_parallel.bash`
|
||||||
|
env_parallel --session
|
||||||
|
|
||||||
|
|
||||||
P_ALL="alpha tru64 hpux-ia64 syllable pidora raspbian solaris openindiana aix hpux qnx 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="alpha tru64 hpux-ia64 syllable pidora raspbian solaris openindiana aix hpux qnx 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_NOTWORKING="vax alpha openstep"
|
P_NOTWORKING="vax alpha openstep"
|
||||||
P_NOTWORKING_YET="ultrix irix"
|
P_NOTWORKING_YET="ultrix irix"
|
||||||
|
|
||||||
P_WORKING="openbsd tru64 debian freebsd redhat netbsd macosx miros centos unixware pidora ubuntu scosysv raspbian solaris-x86 aix mandriva debian-ppc suse solaris hpux openindiana hpux-ia64"
|
P_WORKING="openbsd tru64 debian freebsd redhat netbsd macosx miros centos unixware pidora ubuntu scosysv raspbian solaris-x86 aix mandriva debian-ppc suse solaris hpux openindiana hpux-ia64"
|
||||||
P_WORKING="openbsd tru64 debian redhat netbsd macosx miros centos unixware pidora scosysv raspbian solaris-x86 aix mandriva debian-ppc suse solaris hpux hurd freebsd"
|
P_WORKING="openbsd tru64 debian redhat netbsd macosx miros centos unixware pidora scosysv raspbian solaris-x86 aix mandriva debian-ppc suse solaris hpux hurd freebsd ubuntu"
|
||||||
P_TEMPORARILY_BROKEN="minix dragonfly ubuntu openindiana hpux-ia64 beaglebone cubieboard2"
|
P_TEMPORARILY_BROKEN="minix dragonfly openindiana hpux-ia64 beaglebone cubieboard2"
|
||||||
|
|
||||||
P="$P_WORKING"
|
P="$P_WORKING"
|
||||||
POLAR=`parallel -k echo {}.polarhome.com ::: $P`
|
POLAR=`parallel -k echo {}.polarhome.com ::: $P`
|
||||||
S_POLAR=`parallel -k echo -S 1/{}.polarhome.com ::: $P`
|
S_POLAR=`parallel -k echo -S 1/{}.polarhome.com ::: $P`
|
||||||
|
|
||||||
# 2018-04-22 TIMEOUT=20
|
# 2018-04-22 TIMEOUT=20
|
||||||
TIMEOUT=25
|
TIMEOUT=25
|
||||||
RETRIES=4
|
RETRIES=4
|
||||||
|
@ -23,6 +28,9 @@ doit() {
|
||||||
# Avoid the stupid /etc/issue.net banner at Polarhome: -oLogLevel=quiet
|
# Avoid the stupid /etc/issue.net banner at Polarhome: -oLogLevel=quiet
|
||||||
PARALLEL_SSH="ssh -oLogLevel=quiet"
|
PARALLEL_SSH="ssh -oLogLevel=quiet"
|
||||||
export PARALLEL_SSH
|
export PARALLEL_SSH
|
||||||
|
export TIMEOUT
|
||||||
|
export RETRIES
|
||||||
|
echo TIMEOUT=$TIMEOUT RETRIES=$RETRIES
|
||||||
|
|
||||||
copy() {
|
copy() {
|
||||||
# scp, but atomic (avoid half files if disconnected)
|
# scp, but atomic (avoid half files if disconnected)
|
||||||
|
@ -105,8 +113,7 @@ doit() {
|
||||||
par_nonall 'start=2; env_parset var1,var2,var3 seq \$start ::: 2 3 4; echo $var1,$var2,$var3' 2>&1
|
par_nonall 'start=2; env_parset var1,var2,var3 seq \$start ::: 2 3 4; echo $var1,$var2,$var3' 2>&1
|
||||||
}
|
}
|
||||||
|
|
||||||
. `which env_parallel.bash`
|
env_parallel -u -Sredhat.p doit ::: 1
|
||||||
env_parallel -u --env _ -Sredhat.p doit ::: 1
|
|
||||||
|
|
||||||
# eval 'myfunc() { echo '$(perl -e 'print "x"x20000')'; }'
|
# eval 'myfunc() { echo '$(perl -e 'print "x"x20000')'; }'
|
||||||
# env_parallel myfunc ::: a | wc # OK
|
# env_parallel myfunc ::: a | wc # OK
|
||||||
|
|
|
@ -1,3 +1,4 @@
|
||||||
|
TIMEOUT=25 RETRIES=4
|
||||||
### Copy commands to servers
|
### Copy commands to servers
|
||||||
Done copying
|
Done copying
|
||||||
aix.polarhome.com ### Test if empty command in process list causes problems
|
aix.polarhome.com ### Test if empty command in process list causes problems
|
||||||
|
@ -34,6 +35,8 @@ suse.polarhome.com ### Test if empty command in process list causes problems
|
||||||
suse.polarhome.com OK_with_empty_cmd
|
suse.polarhome.com OK_with_empty_cmd
|
||||||
tru64.polarhome.com ### Test if empty command in process list causes problems
|
tru64.polarhome.com ### Test if empty command in process list causes problems
|
||||||
tru64.polarhome.com OK_with_empty_cmd
|
tru64.polarhome.com OK_with_empty_cmd
|
||||||
|
ubuntu.polarhome.com ### Test if empty command in process list causes problems
|
||||||
|
ubuntu.polarhome.com OK_with_empty_cmd
|
||||||
unixware.polarhome.com UX:sh (/bin/sh): ERROR: -f: is not an identifier
|
unixware.polarhome.com UX:sh (/bin/sh): ERROR: -f: is not an identifier
|
||||||
aix.polarhome.com Works on aix7
|
aix.polarhome.com Works on aix7
|
||||||
centos.polarhome.com Works on centos.polarhome.com
|
centos.polarhome.com Works on centos.polarhome.com
|
||||||
|
@ -53,6 +56,7 @@ solaris-x86.polarhome.com Works on solaris-x86
|
||||||
solaris.polarhome.com Works on solaris
|
solaris.polarhome.com Works on solaris
|
||||||
suse.polarhome.com Works on suse
|
suse.polarhome.com Works on suse
|
||||||
tru64.polarhome.com Works on tru64.polarhome.com
|
tru64.polarhome.com Works on tru64.polarhome.com
|
||||||
|
ubuntu.polarhome.com Works on ubuntu
|
||||||
unixware.polarhome.com Works on unixware.polarhome.com
|
unixware.polarhome.com Works on unixware.polarhome.com
|
||||||
unixware.polarhome.com UX:sh (/bin/sh): ERROR: source: Not found
|
unixware.polarhome.com UX:sh (/bin/sh): ERROR: source: Not found
|
||||||
aix.polarhome.com Error in tempfile() using /XXXXXXXX.arg: Could not create temp file /XXXXXXXX.arg: The file access permissions do not allow the specified action. at /home/t/tange/bin/parallel line 0000
|
aix.polarhome.com Error in tempfile() using /XXXXXXXX.arg: Could not create temp file /XXXXXXXX.arg: The file access permissions do not allow the specified action. at /home/t/tange/bin/parallel line 0000
|
||||||
|
@ -94,6 +98,8 @@ suse.polarhome.com OK
|
||||||
tru64.polarhome.com Error in tempfile() using /XXXXXXXX.arg: Parent directory (/) is not writable
|
tru64.polarhome.com Error in tempfile() using /XXXXXXXX.arg: Parent directory (/) is not writable
|
||||||
tru64.polarhome.com at /home/t/tange/bin/parallel line 0000
|
tru64.polarhome.com at /home/t/tange/bin/parallel line 0000
|
||||||
tru64.polarhome.com OK
|
tru64.polarhome.com OK
|
||||||
|
ubuntu.polarhome.com 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.polarhome.com OK
|
||||||
unixware.polarhome.com UX:sh (/bin/sh): ERROR: source: Not found
|
unixware.polarhome.com UX:sh (/bin/sh): ERROR: source: Not found
|
||||||
unixware.polarhome.com UX:env: ERROR: No such file or directory: bash
|
unixware.polarhome.com UX:env: ERROR: No such file or directory: bash
|
||||||
|
|
||||||
|
@ -117,6 +123,7 @@ solaris-x86.polarhome.com bash only A
|
||||||
solaris.polarhome.com bash only A
|
solaris.polarhome.com bash only A
|
||||||
suse.polarhome.com /home/t/tange/bin/bash: func: command not found
|
suse.polarhome.com /home/t/tange/bin/bash: func: command not found
|
||||||
tru64.polarhome.com bash only A
|
tru64.polarhome.com bash only A
|
||||||
|
ubuntu.polarhome.com bash only A
|
||||||
unixware.polarhome.com UX:sh (/bin/sh): ERROR: /bin/sh: Syntax error at line 1: `(' unexpected
|
unixware.polarhome.com UX:sh (/bin/sh): ERROR: /bin/sh: Syntax error at line 1: `(' unexpected
|
||||||
|
|
||||||
### Does PARALLEL_SHELL help exporting a bash function not kill parallel
|
### Does PARALLEL_SHELL help exporting a bash function not kill parallel
|
||||||
|
@ -138,6 +145,7 @@ solaris-x86.polarhome.com bash only B
|
||||||
solaris.polarhome.com bash only B
|
solaris.polarhome.com bash only B
|
||||||
suse.polarhome.com bash only B
|
suse.polarhome.com bash only B
|
||||||
tru64.polarhome.com bash only B
|
tru64.polarhome.com bash only B
|
||||||
|
ubuntu.polarhome.com bash only B
|
||||||
unixware.polarhome.com bash only B
|
unixware.polarhome.com bash only B
|
||||||
|
|
||||||
### env_parallel echo :::: <(echo OK)
|
### env_parallel echo :::: <(echo OK)
|
||||||
|
@ -314,6 +322,16 @@ tru64.polarhome.com /home/t/tange/.profile
|
||||||
tru64.polarhome.com /home/t/tange/.cshrc
|
tru64.polarhome.com /home/t/tange/.cshrc
|
||||||
tru64.polarhome.com /home/t/tange/.tcshrc
|
tru64.polarhome.com /home/t/tange/.tcshrc
|
||||||
tru64.polarhome.com install-OK
|
tru64.polarhome.com install-OK
|
||||||
|
ubuntu.polarhome.com Installed env_parallel in:
|
||||||
|
ubuntu.polarhome.com /home/t/tange/.bashrc
|
||||||
|
ubuntu.polarhome.com /home/t/tange/.shrc
|
||||||
|
ubuntu.polarhome.com /home/t/tange/.zshenv
|
||||||
|
ubuntu.polarhome.com /home/t/tange/.config/fish/config.fish
|
||||||
|
ubuntu.polarhome.com /home/t/tange/.kshrc
|
||||||
|
ubuntu.polarhome.com /home/t/tange/.profile
|
||||||
|
ubuntu.polarhome.com /home/t/tange/.cshrc
|
||||||
|
ubuntu.polarhome.com /home/t/tange/.tcshrc
|
||||||
|
ubuntu.polarhome.com install-OK
|
||||||
unixware.polarhome.com UX:sh (/bin/sh): ERROR: source: Not found
|
unixware.polarhome.com UX:sh (/bin/sh): ERROR: source: Not found
|
||||||
unixware.polarhome.com UX:env: ERROR: No such file or directory: bash
|
unixware.polarhome.com UX:env: ERROR: No such file or directory: bash
|
||||||
aix.polarhome.com env_parallel run-OK
|
aix.polarhome.com env_parallel run-OK
|
||||||
|
@ -334,6 +352,7 @@ solaris-x86.polarhome.com env_parallel run-OK
|
||||||
solaris.polarhome.com env_parallel run-OK
|
solaris.polarhome.com env_parallel run-OK
|
||||||
suse.polarhome.com env_parallel run-OK
|
suse.polarhome.com env_parallel run-OK
|
||||||
tru64.polarhome.com env_parallel run-OK
|
tru64.polarhome.com env_parallel run-OK
|
||||||
|
ubuntu.polarhome.com env_parallel run-OK
|
||||||
unixware.polarhome.com env_parallel run-OK
|
unixware.polarhome.com env_parallel run-OK
|
||||||
unixware.polarhome.com UX:sh (/bin/sh): ERROR: source: Not found
|
unixware.polarhome.com UX:sh (/bin/sh): ERROR: source: Not found
|
||||||
aix.polarhome.com reading from process substitution OK
|
aix.polarhome.com reading from process substitution OK
|
||||||
|
@ -352,6 +371,7 @@ solaris-x86.polarhome.com reading from process substitution OK
|
||||||
solaris.polarhome.com reading from process substitution OK
|
solaris.polarhome.com reading from process substitution OK
|
||||||
suse.polarhome.com reading from process substitution OK
|
suse.polarhome.com reading from process substitution OK
|
||||||
tru64.polarhome.com reading from process substitution OK
|
tru64.polarhome.com reading from process substitution OK
|
||||||
|
ubuntu.polarhome.com reading from process substitution OK
|
||||||
|
|
||||||
### parset arr seq ::: 2 3 4
|
### parset arr seq ::: 2 3 4
|
||||||
(bash ksh zsh only)
|
(bash ksh zsh only)
|
||||||
|
@ -375,6 +395,7 @@ solaris-x86.polarhome.com 1 2 1 2 3 1 2 3 4
|
||||||
solaris.polarhome.com 1 2 1 2 3 1 2 3 4
|
solaris.polarhome.com 1 2 1 2 3 1 2 3 4
|
||||||
suse.polarhome.com 1 2 1 2 3 1 2 3 4
|
suse.polarhome.com 1 2 1 2 3 1 2 3 4
|
||||||
tru64.polarhome.com 1 2 1 2 3 1 2 3 4
|
tru64.polarhome.com 1 2 1 2 3 1 2 3 4
|
||||||
|
ubuntu.polarhome.com 1 2 1 2 3 1 2 3 4
|
||||||
unixware.polarhome.com UX:sh (/bin/sh): ERROR: source: Not found
|
unixware.polarhome.com UX:sh (/bin/sh): ERROR: source: Not found
|
||||||
unixware.polarhome.com UX:sh (/bin/sh): ERROR: /bin/sh: Syntax error at line 1: `arr=' unexpected
|
unixware.polarhome.com UX:sh (/bin/sh): ERROR: /bin/sh: Syntax error at line 1: `arr=' unexpected
|
||||||
### env_parset arr seq ::: 2 3 4
|
### env_parset arr seq ::: 2 3 4
|
||||||
|
@ -398,6 +419,7 @@ solaris-x86.polarhome.com 2 2 3 2 3 4
|
||||||
solaris.polarhome.com 1 2 1 2 1 2
|
solaris.polarhome.com 1 2 1 2 1 2
|
||||||
suse.polarhome.com 2 2 3 2 3 4
|
suse.polarhome.com 2 2 3 2 3 4
|
||||||
tru64.polarhome.com 2 2 3 2 3 4
|
tru64.polarhome.com 2 2 3 2 3 4
|
||||||
|
ubuntu.polarhome.com 2 2 3 2 3 4
|
||||||
unixware.polarhome.com UX:sh (/bin/sh): ERROR: source: Not found
|
unixware.polarhome.com UX:sh (/bin/sh): ERROR: source: Not found
|
||||||
unixware.polarhome.com UX:sh (/bin/sh): ERROR: /bin/sh: Syntax error at line 1: `arr=' unexpected
|
unixware.polarhome.com UX:sh (/bin/sh): ERROR: /bin/sh: Syntax error at line 1: `arr=' unexpected
|
||||||
|
|
||||||
|
@ -423,6 +445,7 @@ solaris-x86.polarhome.com 1 2,1 2 3,1 2 3 4
|
||||||
solaris.polarhome.com 1 2,1 2 3,1 2 3 4
|
solaris.polarhome.com 1 2,1 2 3,1 2 3 4
|
||||||
suse.polarhome.com 1 2,1 2 3,1 2 3 4
|
suse.polarhome.com 1 2,1 2 3,1 2 3 4
|
||||||
tru64.polarhome.com 1 2,1 2 3,1 2 3 4
|
tru64.polarhome.com 1 2,1 2 3,1 2 3 4
|
||||||
|
ubuntu.polarhome.com 1 2,1 2 3,1 2 3 4
|
||||||
unixware.polarhome.com ,,
|
unixware.polarhome.com ,,
|
||||||
unixware.polarhome.com UX:sh (/bin/sh): ERROR: source: Not found
|
unixware.polarhome.com 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
|
||||||
|
@ -446,5 +469,6 @@ solaris-x86.polarhome.com 2,2 3,2 3 4
|
||||||
solaris.polarhome.com 1 2,1 2,1 2
|
solaris.polarhome.com 1 2,1 2,1 2
|
||||||
suse.polarhome.com 2,2 3,2 3 4
|
suse.polarhome.com 2,2 3,2 3 4
|
||||||
tru64.polarhome.com 2,2 3,2 3 4
|
tru64.polarhome.com 2,2 3,2 3 4
|
||||||
|
ubuntu.polarhome.com 2,2 3,2 3 4
|
||||||
unixware.polarhome.com 2,2 3,2 3 4
|
unixware.polarhome.com 2,2 3,2 3 4
|
||||||
unixware.polarhome.com UX:sh (/bin/sh): ERROR: source: Not found
|
unixware.polarhome.com UX:sh (/bin/sh): ERROR: source: Not found
|
||||||
|
|
|
@ -539,7 +539,7 @@ B D
|
||||||
seq 10 20 | parallel --tmux 'echo start {}; sleep {}; echo done {}'
|
seq 10 20 | parallel --tmux 'echo start {}; sleep {}; echo done {}'
|
||||||
See output with: tmux -S /tmp/parallel-tutorial-tmpdir/tmsXXXXX attach
|
See output with: tmux -S /tmp/parallel-tutorial-tmpdir/tmsXXXXX attach
|
||||||
tmux -S /tmp/tmsXXXXX attach
|
tmux -S /tmp/tmsXXXXX attach
|
||||||
no current session
|
no sessions
|
||||||
parallel --delay 2.5 echo Starting {}\;date ::: 1 2 3
|
parallel --delay 2.5 echo Starting {}\;date ::: 1 2 3
|
||||||
Starting 1
|
Starting 1
|
||||||
DATE OUTPUT
|
DATE OUTPUT
|
||||||
|
@ -549,8 +549,14 @@ Starting 3
|
||||||
DATE OUTPUT
|
DATE OUTPUT
|
||||||
parallel --timeout 4.1 sleep {}\; echo {} ::: 2 4 6 8
|
parallel --timeout 4.1 sleep {}\; echo {} ::: 2 4 6 8
|
||||||
9
|
9
|
||||||
|
parallel: Warning: This job was killed because it timed out:
|
||||||
|
parallel: Warning: sleep 6; echo 6
|
||||||
|
parallel: Warning: This job was killed because it timed out:
|
||||||
|
parallel: Warning: sleep 8; echo 8
|
||||||
parallel --timeout 200% sleep {}\; echo {} ::: 2.1 2.2 3 7 2.3
|
parallel --timeout 200% sleep {}\; echo {} ::: 2.1 2.2 3 7 2.3
|
||||||
9
|
9
|
||||||
|
parallel: Warning: This job was killed because it timed out:
|
||||||
|
parallel: Warning: sleep 7; echo 7
|
||||||
parallel --eta sleep ::: 1 3 2 2 1 3 3 2 1
|
parallel --eta sleep ::: 1 3 2 2 1 3 3 2 1
|
||||||
|
|
||||||
Computers / CPU cores / Max jobs to run
|
Computers / CPU cores / Max jobs to run
|
||||||
|
@ -660,6 +666,8 @@ tried 1
|
||||||
export -f show_signals
|
export -f show_signals
|
||||||
echo | parallel --termseq TERM,200,TERM,100,TERM,50,KILL,25 \
|
echo | parallel --termseq TERM,200,TERM,100,TERM,50,KILL,25 \
|
||||||
-u --timeout 1 show_signals
|
-u --timeout 1 show_signals
|
||||||
|
parallel: Warning: This job was killed because it timed out:
|
||||||
|
parallel: Warning: show_signals ''
|
||||||
echo | parallel --termseq INT,200,TERM,100,KILL,25 \
|
echo | parallel --termseq INT,200,TERM,100,KILL,25 \
|
||||||
-u --timeout 1 show_signals
|
-u --timeout 1 show_signals
|
||||||
/bin/bash: show_signals: command not found
|
/bin/bash: show_signals: command not found
|
||||||
|
@ -757,42 +765,42 @@ Unknown option: :::
|
||||||
Unknown option: green
|
Unknown option: green
|
||||||
env_parallel only works if it is a function. Do the below and restart your shell.
|
env_parallel only works if it is a function. Do the below and restart your shell.
|
||||||
|
|
||||||
bash: Put this in ~/.bashrc: . /usr/local/bin/env_parallel.bash
|
bash: Put this in $HOME/.bashrc: . `which env_parallel.bash`
|
||||||
E.g. by doing: echo '. /usr/local/bin/env_parallel.bash' >> ~/.bashrc
|
E.g. by doing: echo '. `which env_parallel.bash`' >> $HOME/.bashrc
|
||||||
Supports: aliases, functions, variables, arrays
|
Supports: aliases, functions, variables, arrays
|
||||||
|
|
||||||
zsh: Put this in ~/.zshrc: . /usr/local/bin/env_parallel.zsh
|
zsh: Put this in $HOME/.zshrc: . `which env_parallel.zsh`
|
||||||
E.g. by doing: echo '. /usr/local/bin/env_parallel.zsh' >> ~/.zshenv
|
E.g. by doing: echo '. `which env_parallel.zsh`' >> $HOME/.zshenv
|
||||||
Supports: functions, variables, arrays
|
Supports: functions, variables, arrays
|
||||||
|
|
||||||
fish: Put this in ~/.config/fish/config.fish:
|
fish: Put this in $HOME/.config/fish/config.fish:
|
||||||
. (which env_parallel.fish)
|
. (which env_parallel.fish)
|
||||||
E.g. by doing:
|
E.g. by doing:
|
||||||
echo '. (which env_parallel.fish)' >> ~/.config/fish/config.fish
|
echo '. (which env_parallel.fish)' >> $HOME/.config/fish/config.fish
|
||||||
Supports: aliases, functions, variables, arrays
|
Supports: aliases, functions, variables, arrays
|
||||||
|
|
||||||
ksh: Put this in ~/.kshrc: source /usr/local/bin/env_parallel.ksh
|
ksh: Put this in $HOME/.kshrc: source `which env_parallel.ksh`
|
||||||
E.g. by doing: echo 'source /usr/local/bin/env_parallel.ksh' >> ~/.kshrc
|
E.g. by doing: echo 'source `which env_parallel.ksh`' >> $HOME/.kshrc
|
||||||
Supports: aliases, functions, variables, arrays
|
Supports: aliases, functions, variables, arrays
|
||||||
|
|
||||||
pdksh: Put this in ~/.profile: source /usr/local/bin/env_parallel.pdksh
|
pdksh: Put this in $HOME/.profile: source `which env_parallel.pdksh`
|
||||||
E.g. by doing: echo '. /usr/local/bin/env_parallel.pdksh' >> ~/.profile
|
E.g. by doing: echo '. `which env_parallel.pdksh`' >> $HOME/.profile
|
||||||
Supports: aliases, functions, variables, arrays
|
Supports: aliases, functions, variables, arrays
|
||||||
|
|
||||||
ash: Put this in ~/.profile: . /usr/local/bin/env_parallel.ash
|
ash: Put this in $HOME/.profile: . `which env_parallel.ash`
|
||||||
E.g. by doing: echo '. /usr/local/bin/env_parallel.ash' >> ~/.profile
|
E.g. by doing: echo '. `which env_parallel.ash`' >> $HOME/.profile
|
||||||
Supports: aliases, variables
|
Supports: aliases, variables
|
||||||
|
|
||||||
dash: Put this in ~/.profile: . /usr/local/bin/env_parallel.dash
|
dash: Put this in $HOME/.profile: . `which env_parallel.dash`
|
||||||
E.g. by doing: echo '. /usr/local/bin/env_parallel.dash' >> ~/.profile
|
E.g. by doing: echo '. `which env_parallel.dash`' >> $HOME/.profile
|
||||||
Supports: aliases, variables
|
Supports: aliases, variables
|
||||||
|
|
||||||
csh: Put this in ~/.cshrc: source /usr/local/bin/env_parallel.csh
|
csh: Put this in $HOME/.cshrc: source `which env_parallel.csh`
|
||||||
E.g. by doing: echo 'source /usr/local/bin/env_parallel.csh' >> ~/.cshrc
|
E.g. by doing: echo 'source `which env_parallel.csh`' >> $HOME/.cshrc
|
||||||
Supports: aliases, variables, arrays with no special chars
|
Supports: aliases, variables, arrays with no special chars
|
||||||
|
|
||||||
tcsh: Put this in ~/.tcshrc: source /usr/local/bin/env_parallel.tcsh
|
tcsh: Put this in $HOME/.tcshrc: source `which env_parallel.tcsh`
|
||||||
E.g. by doing: echo 'source /usr/local/bin/env_parallel.tcsh' >> ~/.tcshrc
|
E.g. by doing: echo 'source `which env_parallel.tcsh`' >> $HOME/.tcshrc
|
||||||
Supports: aliases, variables, arrays with no special chars
|
Supports: aliases, variables, arrays with no special chars
|
||||||
|
|
||||||
To install in all shells run:
|
To install in all shells run:
|
||||||
|
@ -841,6 +849,7 @@ KONSOLE_DBUS_WINDOW
|
||||||
KONSOLE_PROFILE_NAME
|
KONSOLE_PROFILE_NAME
|
||||||
LANG
|
LANG
|
||||||
LANGUAGE
|
LANGUAGE
|
||||||
|
LC_ALL
|
||||||
LC_TIME
|
LC_TIME
|
||||||
LESS
|
LESS
|
||||||
LESSCLOSE
|
LESSCLOSE
|
||||||
|
@ -853,7 +862,6 @@ MAKE_TERMERR
|
||||||
MAKE_TERMOUT
|
MAKE_TERMOUT
|
||||||
MANDATORY_PATH
|
MANDATORY_PATH
|
||||||
MFLAGS
|
MFLAGS
|
||||||
MOZ_NO_REMOTE
|
|
||||||
ORACLE_HOME
|
ORACLE_HOME
|
||||||
ORACLE_SID
|
ORACLE_SID
|
||||||
PARALLEL
|
PARALLEL
|
||||||
|
@ -926,42 +934,42 @@ Unknown option: :::
|
||||||
Unknown option: bar
|
Unknown option: bar
|
||||||
env_parallel only works if it is a function. Do the below and restart your shell.
|
env_parallel only works if it is a function. Do the below and restart your shell.
|
||||||
|
|
||||||
bash: Put this in ~/.bashrc: . /usr/local/bin/env_parallel.bash
|
bash: Put this in $HOME/.bashrc: . `which env_parallel.bash`
|
||||||
E.g. by doing: echo '. /usr/local/bin/env_parallel.bash' >> ~/.bashrc
|
E.g. by doing: echo '. `which env_parallel.bash`' >> $HOME/.bashrc
|
||||||
Supports: aliases, functions, variables, arrays
|
Supports: aliases, functions, variables, arrays
|
||||||
|
|
||||||
zsh: Put this in ~/.zshrc: . /usr/local/bin/env_parallel.zsh
|
zsh: Put this in $HOME/.zshrc: . `which env_parallel.zsh`
|
||||||
E.g. by doing: echo '. /usr/local/bin/env_parallel.zsh' >> ~/.zshenv
|
E.g. by doing: echo '. `which env_parallel.zsh`' >> $HOME/.zshenv
|
||||||
Supports: functions, variables, arrays
|
Supports: functions, variables, arrays
|
||||||
|
|
||||||
fish: Put this in ~/.config/fish/config.fish:
|
fish: Put this in $HOME/.config/fish/config.fish:
|
||||||
. (which env_parallel.fish)
|
. (which env_parallel.fish)
|
||||||
E.g. by doing:
|
E.g. by doing:
|
||||||
echo '. (which env_parallel.fish)' >> ~/.config/fish/config.fish
|
echo '. (which env_parallel.fish)' >> $HOME/.config/fish/config.fish
|
||||||
Supports: aliases, functions, variables, arrays
|
Supports: aliases, functions, variables, arrays
|
||||||
|
|
||||||
ksh: Put this in ~/.kshrc: source /usr/local/bin/env_parallel.ksh
|
ksh: Put this in $HOME/.kshrc: source `which env_parallel.ksh`
|
||||||
E.g. by doing: echo 'source /usr/local/bin/env_parallel.ksh' >> ~/.kshrc
|
E.g. by doing: echo 'source `which env_parallel.ksh`' >> $HOME/.kshrc
|
||||||
Supports: aliases, functions, variables, arrays
|
Supports: aliases, functions, variables, arrays
|
||||||
|
|
||||||
pdksh: Put this in ~/.profile: source /usr/local/bin/env_parallel.pdksh
|
pdksh: Put this in $HOME/.profile: source `which env_parallel.pdksh`
|
||||||
E.g. by doing: echo '. /usr/local/bin/env_parallel.pdksh' >> ~/.profile
|
E.g. by doing: echo '. `which env_parallel.pdksh`' >> $HOME/.profile
|
||||||
Supports: aliases, functions, variables, arrays
|
Supports: aliases, functions, variables, arrays
|
||||||
|
|
||||||
ash: Put this in ~/.profile: . /usr/local/bin/env_parallel.ash
|
ash: Put this in $HOME/.profile: . `which env_parallel.ash`
|
||||||
E.g. by doing: echo '. /usr/local/bin/env_parallel.ash' >> ~/.profile
|
E.g. by doing: echo '. `which env_parallel.ash`' >> $HOME/.profile
|
||||||
Supports: aliases, variables
|
Supports: aliases, variables
|
||||||
|
|
||||||
dash: Put this in ~/.profile: . /usr/local/bin/env_parallel.dash
|
dash: Put this in $HOME/.profile: . `which env_parallel.dash`
|
||||||
E.g. by doing: echo '. /usr/local/bin/env_parallel.dash' >> ~/.profile
|
E.g. by doing: echo '. `which env_parallel.dash`' >> $HOME/.profile
|
||||||
Supports: aliases, variables
|
Supports: aliases, variables
|
||||||
|
|
||||||
csh: Put this in ~/.cshrc: source /usr/local/bin/env_parallel.csh
|
csh: Put this in $HOME/.cshrc: source `which env_parallel.csh`
|
||||||
E.g. by doing: echo 'source /usr/local/bin/env_parallel.csh' >> ~/.cshrc
|
E.g. by doing: echo 'source `which env_parallel.csh`' >> $HOME/.cshrc
|
||||||
Supports: aliases, variables, arrays with no special chars
|
Supports: aliases, variables, arrays with no special chars
|
||||||
|
|
||||||
tcsh: Put this in ~/.tcshrc: source /usr/local/bin/env_parallel.tcsh
|
tcsh: Put this in $HOME/.tcshrc: source `which env_parallel.tcsh`
|
||||||
E.g. by doing: echo 'source /usr/local/bin/env_parallel.tcsh' >> ~/.tcshrc
|
E.g. by doing: echo 'source `which env_parallel.tcsh`' >> $HOME/.tcshrc
|
||||||
Supports: aliases, variables, arrays with no special chars
|
Supports: aliases, variables, arrays with no special chars
|
||||||
|
|
||||||
To install in all shells run:
|
To install in all shells run:
|
||||||
|
@ -971,7 +979,7 @@ To install in all shells run:
|
||||||
For details: see man env_parallel
|
For details: see man env_parallel
|
||||||
|
|
||||||
parallel -vv --pipepart --block 1M wc :::: num30000
|
parallel -vv --pipepart --block 1M wc :::: num30000
|
||||||
<num30000 perl -e 'while(@ARGV){sysseek(STDIN,shift,0)||die;$left=shift;while($read=sysread(STDIN,$buf,$left>131072?131072:$left)){$left-=$read;syswrite(STDOUT,$buf);}}' 0 0 0 168894 | (wc)
|
<num30000 perl -e 'while(@ARGV){sysseek(STDIN,shift,0)||die;$left=shift;while($read=sysread(STDIN,$buf,$left>131072?131072:$left)){$left-=$read;syswrite(STDOUT,$buf);}}' 0 0 0 168894 |(wc)
|
||||||
30000 30000 168894
|
30000 30000 168894
|
||||||
my_func3() {
|
my_func3() {
|
||||||
echo in my_func $1 > $1.out
|
echo in my_func $1 > $1.out
|
||||||
|
@ -983,18 +991,152 @@ ssh -l parallel lo -- mkdir -p ./.TMPWORKDIR && rsync --protocol 30 -rlDzR -essh
|
||||||
parset myvar1,myvar2 echo ::: a b
|
parset myvar1,myvar2 echo ::: a b
|
||||||
echo $myvar1
|
echo $myvar1
|
||||||
echo $myvar2
|
echo $myvar2
|
||||||
|
Unknown option: myvar1,myvar2
|
||||||
|
Unknown option: echo
|
||||||
|
Unknown option: :::
|
||||||
|
Unknown option: a
|
||||||
|
Unknown option: b
|
||||||
|
parset only works if it is a function. The function is defined as part
|
||||||
|
of env_parallel.
|
||||||
|
|
||||||
|
Do the below and restart your shell.
|
||||||
|
|
||||||
|
bash: Put this in $HOME/.bashrc: . `which env_parallel.bash`
|
||||||
|
E.g. by doing: echo '. `which env_parallel.bash`' >> $HOME/.bashrc
|
||||||
|
Supports: aliases, functions, variables, arrays
|
||||||
|
|
||||||
|
zsh: Put this in $HOME/.zshrc: . `which env_parallel.zsh`
|
||||||
|
E.g. by doing: echo '. `which env_parallel.zsh`' >> $HOME/.zshenv
|
||||||
|
Supports: functions, variables, arrays
|
||||||
|
|
||||||
|
fish: Unsupported
|
||||||
|
|
||||||
|
ksh: Put this in $HOME/.kshrc: source `which env_parallel.ksh`
|
||||||
|
E.g. by doing: echo 'source `which env_parallel.ksh`' >> $HOME/.kshrc
|
||||||
|
Supports: aliases, functions, variables, arrays
|
||||||
|
|
||||||
|
pdksh: Put this in $HOME/.profile: source `which env_parallel.pdksh`
|
||||||
|
E.g. by doing: echo '. `which env_parallel.pdksh`' >> $HOME/.profile
|
||||||
|
Supports: aliases, functions, variables, arrays
|
||||||
|
|
||||||
|
ash: Put this in $HOME/.profile: . `which env_parallel.ash`
|
||||||
|
E.g. by doing: echo '. `which env_parallel.ash`' >> $HOME/.profile
|
||||||
|
Supports: aliases, variables
|
||||||
|
|
||||||
|
dash: Put this in $HOME/.profile: . `which env_parallel.dash`
|
||||||
|
E.g. by doing: echo '. `which env_parallel.dash`' >> $HOME/.profile
|
||||||
|
Supports: aliases, variables
|
||||||
|
|
||||||
|
csh: Unsupported
|
||||||
|
|
||||||
|
tcsh: Unsupported
|
||||||
|
|
||||||
|
To install in all shells run:
|
||||||
|
|
||||||
|
parset --install
|
||||||
|
|
||||||
|
For details: see man parset
|
||||||
|
|
||||||
/bin/bash: parset: command not found
|
|
||||||
parset myarray seq {} 5 ::: 1 2 3
|
parset myarray seq {} 5 ::: 1 2 3
|
||||||
echo "${myarray[1]}"
|
echo "${myarray[1]}"
|
||||||
|
Unknown option: myarray
|
||||||
|
Unknown option: seq
|
||||||
|
Unknown option: {}
|
||||||
|
Unknown option: 5
|
||||||
|
Unknown option: :::
|
||||||
|
Unknown option: 1
|
||||||
|
Unknown option: 2
|
||||||
|
Unknown option: 3
|
||||||
|
parset only works if it is a function. The function is defined as part
|
||||||
|
of env_parallel.
|
||||||
|
|
||||||
|
Do the below and restart your shell.
|
||||||
|
|
||||||
|
bash: Put this in $HOME/.bashrc: . `which env_parallel.bash`
|
||||||
|
E.g. by doing: echo '. `which env_parallel.bash`' >> $HOME/.bashrc
|
||||||
|
Supports: aliases, functions, variables, arrays
|
||||||
|
|
||||||
|
zsh: Put this in $HOME/.zshrc: . `which env_parallel.zsh`
|
||||||
|
E.g. by doing: echo '. `which env_parallel.zsh`' >> $HOME/.zshenv
|
||||||
|
Supports: functions, variables, arrays
|
||||||
|
|
||||||
|
fish: Unsupported
|
||||||
|
|
||||||
|
ksh: Put this in $HOME/.kshrc: source `which env_parallel.ksh`
|
||||||
|
E.g. by doing: echo 'source `which env_parallel.ksh`' >> $HOME/.kshrc
|
||||||
|
Supports: aliases, functions, variables, arrays
|
||||||
|
|
||||||
|
pdksh: Put this in $HOME/.profile: source `which env_parallel.pdksh`
|
||||||
|
E.g. by doing: echo '. `which env_parallel.pdksh`' >> $HOME/.profile
|
||||||
|
Supports: aliases, functions, variables, arrays
|
||||||
|
|
||||||
|
ash: Put this in $HOME/.profile: . `which env_parallel.ash`
|
||||||
|
E.g. by doing: echo '. `which env_parallel.ash`' >> $HOME/.profile
|
||||||
|
Supports: aliases, variables
|
||||||
|
|
||||||
|
dash: Put this in $HOME/.profile: . `which env_parallel.dash`
|
||||||
|
E.g. by doing: echo '. `which env_parallel.dash`' >> $HOME/.profile
|
||||||
|
Supports: aliases, variables
|
||||||
|
|
||||||
|
csh: Unsupported
|
||||||
|
|
||||||
|
tcsh: Unsupported
|
||||||
|
|
||||||
|
To install in all shells run:
|
||||||
|
|
||||||
|
parset --install
|
||||||
|
|
||||||
|
For details: see man parset
|
||||||
|
|
||||||
/bin/bash: parset: command not found
|
|
||||||
cmd=("echo '<<joe \"double space\" cartoon>>'" "pwd")
|
cmd=("echo '<<joe \"double space\" cartoon>>'" "pwd")
|
||||||
parset data ::: "${cmd[@]}"
|
parset data ::: "${cmd[@]}"
|
||||||
echo "${data[0]}"
|
echo "${data[0]}"
|
||||||
echo "${data[1]}"
|
echo "${data[1]}"
|
||||||
|
Unknown option: data
|
||||||
|
Unknown option: :::
|
||||||
|
Unknown option: echo '<<joe "double space" cartoon>>'
|
||||||
|
Unknown option: pwd
|
||||||
|
parset only works if it is a function. The function is defined as part
|
||||||
|
of env_parallel.
|
||||||
|
|
||||||
|
Do the below and restart your shell.
|
||||||
|
|
||||||
|
bash: Put this in $HOME/.bashrc: . `which env_parallel.bash`
|
||||||
|
E.g. by doing: echo '. `which env_parallel.bash`' >> $HOME/.bashrc
|
||||||
|
Supports: aliases, functions, variables, arrays
|
||||||
|
|
||||||
|
zsh: Put this in $HOME/.zshrc: . `which env_parallel.zsh`
|
||||||
|
E.g. by doing: echo '. `which env_parallel.zsh`' >> $HOME/.zshenv
|
||||||
|
Supports: functions, variables, arrays
|
||||||
|
|
||||||
|
fish: Unsupported
|
||||||
|
|
||||||
|
ksh: Put this in $HOME/.kshrc: source `which env_parallel.ksh`
|
||||||
|
E.g. by doing: echo 'source `which env_parallel.ksh`' >> $HOME/.kshrc
|
||||||
|
Supports: aliases, functions, variables, arrays
|
||||||
|
|
||||||
|
pdksh: Put this in $HOME/.profile: source `which env_parallel.pdksh`
|
||||||
|
E.g. by doing: echo '. `which env_parallel.pdksh`' >> $HOME/.profile
|
||||||
|
Supports: aliases, functions, variables, arrays
|
||||||
|
|
||||||
|
ash: Put this in $HOME/.profile: . `which env_parallel.ash`
|
||||||
|
E.g. by doing: echo '. `which env_parallel.ash`' >> $HOME/.profile
|
||||||
|
Supports: aliases, variables
|
||||||
|
|
||||||
|
dash: Put this in $HOME/.profile: . `which env_parallel.dash`
|
||||||
|
E.g. by doing: echo '. `which env_parallel.dash`' >> $HOME/.profile
|
||||||
|
Supports: aliases, variables
|
||||||
|
|
||||||
|
csh: Unsupported
|
||||||
|
|
||||||
|
tcsh: Unsupported
|
||||||
|
|
||||||
|
To install in all shells run:
|
||||||
|
|
||||||
|
parset --install
|
||||||
|
|
||||||
|
For details: see man parset
|
||||||
|
|
||||||
/bin/bash: line 1: parset: command not found
|
|
||||||
parallel --sqlandworker csv:////%2Ftmp%2Flog.csv \
|
parallel --sqlandworker csv:////%2Ftmp%2Flog.csv \
|
||||||
seq ::: 10 ::: 12 13 14
|
seq ::: 10 ::: 12 13 14
|
||||||
cat /tmp/log.csv
|
cat /tmp/log.csv
|
||||||
|
@ -1262,7 +1404,6 @@ The second finished running in the foreground
|
||||||
First started
|
First started
|
||||||
First done
|
First done
|
||||||
sem --id my_id -u 'echo Second started; sleep 10; echo Second done'
|
sem --id my_id -u 'echo Second started; sleep 10; echo Second done'
|
||||||
Second done
|
|
||||||
sem --jobs 3 --id my_id -u 'echo Start 1; sleep 5; echo 1 done' &&
|
sem --jobs 3 --id my_id -u 'echo Start 1; sleep 5; echo 1 done' &&
|
||||||
sem --jobs 3 --id my_id -u 'echo Start 2; sleep 6; echo 2 done' &&
|
sem --jobs 3 --id my_id -u 'echo Start 2; sleep 6; echo 2 done' &&
|
||||||
sem --jobs 3 --id my_id -u 'echo Start 3; sleep 7; echo 3 done' &&
|
sem --jobs 3 --id my_id -u 'echo Start 3; sleep 7; echo 3 done' &&
|
||||||
|
@ -1283,8 +1424,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:
|
||||||
|
|
||||||
|
@ -1317,15 +1458,15 @@ Academic 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:
|
||||||
|
|
||||||
O. Tange (2011): GNU Parallel - The Command-Line Power Tool,
|
O. Tange (2018): GNU Parallel 2018, Mar 2018, ISBN 9781387509881,
|
||||||
;login: The USENIX Magazine, February 2011:42-47.
|
DOI https://doi.org/10.5281/zenodo.1146014
|
||||||
|
|
||||||
This helps funding further development; AND IT WON'T COST YOU A CENT.
|
This helps funding further development; AND IT WON'T COST YOU A CENT.
|
||||||
If you pay 10000 EUR you should feel free to use GNU Parallel without citing.
|
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,2008,2009,2010,2011,2012,2013,2014,2015,2016,2017
|
Copyright (C) 2007,2008,2009,2010,2011,2012,2013,2014,2015,2016,2017,2018
|
||||||
Ole Tange and Free Software Foundation, Inc.
|
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.
|
||||||
|
@ -1344,25 +1485,25 @@ Academic 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:
|
||||||
|
|
||||||
@article{Tange2011a,
|
@book{tange_ole_2018_1146014,
|
||||||
title = {GNU Parallel - The Command-Line Power Tool},
|
author = {Tange, Ole},
|
||||||
author = {O. Tange},
|
title = {GNU Parallel 2018},
|
||||||
address = {Frederiksberg, Denmark},
|
publisher = {Ole Tange},
|
||||||
journal = {;login: The USENIX Magazine},
|
month = Mar,
|
||||||
month = {Feb},
|
year = 2018,
|
||||||
number = {1},
|
ISBN = {9781387509881},
|
||||||
volume = {36},
|
doi = {10.5281/zenodo.1146014},
|
||||||
url = {http://www.gnu.org/s/parallel},
|
url = {https://doi.org/10.5281/zenodo.1146014}
|
||||||
year = {2011},
|
|
||||||
pages = {42-47},
|
|
||||||
doi = {http://dx.doi.org/10.5281/zenodo.16303}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
(Feel free to use \nocite{Tange2011a})
|
(Feel free to use \nocite{tange_ole_2018_1146014})
|
||||||
|
|
||||||
This helps funding further development; AND IT WON'T COST YOU A CENT.
|
This helps funding further development; AND IT WON'T COST YOU A CENT.
|
||||||
If you pay 10000 EUR you should feel free to use GNU Parallel without citing.
|
If you pay 10000 EUR you should feel free to use GNU Parallel without citing.
|
||||||
|
|
||||||
|
More about funding GNU Parallel and the citation notice:
|
||||||
|
https://www.gnu.org/software/parallel/parallel_design.html#Citation-notice
|
||||||
|
|
||||||
If you send a copy of your published article to tange@gnu.org, it will be
|
If you send a copy of your published article to tange@gnu.org, it will be
|
||||||
mentioned in the release notes of next version of GNU Parallel.
|
mentioned in the release notes of next version of GNU Parallel.
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue