mirror of
https://git.savannah.gnu.org/git/parallel.git
synced 2024-11-21 21:47:54 +00:00
Released as 20141009alpha.
This commit is contained in:
parent
b864dbd0db
commit
f7b2b1513c
12
README
12
README
|
@ -40,9 +40,9 @@ document.
|
|||
|
||||
Full installation of GNU Parallel is as simple as:
|
||||
|
||||
wget http://ftpmirror.gnu.org/parallel/parallel-20140922.tar.bz2
|
||||
bzip2 -dc parallel-20140922.tar.bz2 | tar xvf -
|
||||
cd parallel-20140922
|
||||
wget http://ftpmirror.gnu.org/parallel/parallel-20141009.tar.bz2
|
||||
bzip2 -dc parallel-20141009.tar.bz2 | tar xvf -
|
||||
cd parallel-20141009
|
||||
./configure && make && make install
|
||||
|
||||
|
||||
|
@ -51,9 +51,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-20140922.tar.bz2
|
||||
bzip2 -dc parallel-20140922.tar.bz2 | tar xvf -
|
||||
cd parallel-20140922
|
||||
wget http://ftpmirror.gnu.org/parallel/parallel-20141009.tar.bz2
|
||||
bzip2 -dc parallel-20141009.tar.bz2 | tar xvf -
|
||||
cd parallel-20141009
|
||||
./configure --prefix=$HOME && make && make install
|
||||
|
||||
Or if your system lacks 'make' you can simply copy src/parallel
|
||||
|
|
20
configure
vendored
20
configure
vendored
|
@ -1,6 +1,6 @@
|
|||
#! /bin/sh
|
||||
# Guess values for system-dependent variables and create Makefiles.
|
||||
# Generated by GNU Autoconf 2.69 for parallel 20140922.
|
||||
# Generated by GNU Autoconf 2.69 for parallel 20141009.
|
||||
#
|
||||
# Report bugs to <bug-parallel@gnu.org>.
|
||||
#
|
||||
|
@ -579,8 +579,8 @@ MAKEFLAGS=
|
|||
# Identity of this package.
|
||||
PACKAGE_NAME='parallel'
|
||||
PACKAGE_TARNAME='parallel'
|
||||
PACKAGE_VERSION='20140922'
|
||||
PACKAGE_STRING='parallel 20140922'
|
||||
PACKAGE_VERSION='20141009'
|
||||
PACKAGE_STRING='parallel 20141009'
|
||||
PACKAGE_BUGREPORT='bug-parallel@gnu.org'
|
||||
PACKAGE_URL=''
|
||||
|
||||
|
@ -1203,7 +1203,7 @@ if test "$ac_init_help" = "long"; then
|
|||
# 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.
|
||||
cat <<_ACEOF
|
||||
\`configure' configures parallel 20140922 to adapt to many kinds of systems.
|
||||
\`configure' configures parallel 20141009 to adapt to many kinds of systems.
|
||||
|
||||
Usage: $0 [OPTION]... [VAR=VALUE]...
|
||||
|
||||
|
@ -1269,7 +1269,7 @@ fi
|
|||
|
||||
if test -n "$ac_init_help"; then
|
||||
case $ac_init_help in
|
||||
short | recursive ) echo "Configuration of parallel 20140922:";;
|
||||
short | recursive ) echo "Configuration of parallel 20141009:";;
|
||||
esac
|
||||
cat <<\_ACEOF
|
||||
|
||||
|
@ -1345,7 +1345,7 @@ fi
|
|||
test -n "$ac_init_help" && exit $ac_status
|
||||
if $ac_init_version; then
|
||||
cat <<\_ACEOF
|
||||
parallel configure 20140922
|
||||
parallel configure 20141009
|
||||
generated by GNU Autoconf 2.69
|
||||
|
||||
Copyright (C) 2012 Free Software Foundation, Inc.
|
||||
|
@ -1362,7 +1362,7 @@ cat >config.log <<_ACEOF
|
|||
This file contains any messages produced by compilers while
|
||||
running configure, to aid debugging if configure makes a mistake.
|
||||
|
||||
It was created by parallel $as_me 20140922, which was
|
||||
It was created by parallel $as_me 20141009, which was
|
||||
generated by GNU Autoconf 2.69. Invocation command line was
|
||||
|
||||
$ $0 $@
|
||||
|
@ -2225,7 +2225,7 @@ fi
|
|||
|
||||
# Define the identity of the package.
|
||||
PACKAGE='parallel'
|
||||
VERSION='20140922'
|
||||
VERSION='20141009'
|
||||
|
||||
|
||||
cat >>confdefs.h <<_ACEOF
|
||||
|
@ -2867,7 +2867,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
|
|||
# report actual input values of CONFIG_FILES etc. instead of their
|
||||
# values after options handling.
|
||||
ac_log="
|
||||
This file was extended by parallel $as_me 20140922, which was
|
||||
This file was extended by parallel $as_me 20141009, which was
|
||||
generated by GNU Autoconf 2.69. Invocation command line was
|
||||
|
||||
CONFIG_FILES = $CONFIG_FILES
|
||||
|
@ -2929,7 +2929,7 @@ _ACEOF
|
|||
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
|
||||
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
|
||||
ac_cs_version="\\
|
||||
parallel config.status 20140922
|
||||
parallel config.status 20141009
|
||||
configured by $0, generated by GNU Autoconf 2.69,
|
||||
with options \\"\$ac_cs_config\\"
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
AC_INIT([parallel], [20140922], [bug-parallel@gnu.org])
|
||||
AC_INIT([parallel], [20141009], [bug-parallel@gnu.org])
|
||||
AM_INIT_AUTOMAKE([-Wall -Werror foreign])
|
||||
AC_CONFIG_HEADERS([config.h])
|
||||
AC_CONFIG_FILES([
|
||||
|
|
|
@ -225,16 +225,25 @@ cc:Tim Cuthbertson <tim3d.junk@gmail.com>,
|
|||
Ryoichiro Suzuki <ryoichiro.suzuki@gmail.com>,
|
||||
Jesse Alama <jesse.alama@gmail.com>
|
||||
|
||||
Subject: GNU Parallel 20141022 ('') released
|
||||
Subject: GNU Parallel 20141022 ('Shellshock') released
|
||||
|
||||
GNU Parallel 20141022 ('') has been released. It is available for download at: http://ftp.gnu.org/gnu/parallel/
|
||||
GNU Parallel 20141022 ('Shellshock') has been released. It is available for download at: http://ftp.gnu.org/gnu/parallel/
|
||||
|
||||
Shellshock has also hit GNU Parallel. It is not a security issue, per se (the security issue was in Bash), but Bash's solution affects --env when exporting a function.
|
||||
|
||||
Haiku of the month:
|
||||
|
||||
Shellshock pain hits us.
|
||||
Dash dash env is affected.
|
||||
Upgrade Parallel.
|
||||
-- Ole Tange
|
||||
|
||||
(Last month's haiku was by Malcolm Cook)
|
||||
|
||||
New in this release:
|
||||
|
||||
* --env was changed to deal with Bash's new way of exporting a function.
|
||||
|
||||
* GNU Parallel was cited in: Exclusion of cosmic rays in protoplanetary disks. II. Chemical gradients and observational signatures http://iopscience.iop.org/0004-637X/794/2/123/article
|
||||
|
||||
* GNU Parallel was cited in: Application of Machine Learning to Algorithm Selection for TSP http://www.dbai.tuwien.ac.at/staff/musliu/art_ictai_cam.pdf
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
Summary: Shell tool for executing jobs in parallel
|
||||
Name: parallel
|
||||
Version: 20140922
|
||||
Version: 20141009
|
||||
Release: 1
|
||||
License: GPL
|
||||
Group: Productivity/File utilities
|
||||
|
|
|
@ -24,7 +24,7 @@
|
|||
use strict;
|
||||
use Getopt::Long;
|
||||
$Global::progname="niceload";
|
||||
$Global::version = 20140922;
|
||||
$Global::version = 20141009;
|
||||
Getopt::Long::Configure("bundling","require_order");
|
||||
get_options_from_array(\@ARGV) || die_usage();
|
||||
if($opt::version) {
|
||||
|
|
|
@ -160,7 +160,7 @@ B<--basenameextensionreplace>.
|
|||
To understand replacement strings see B<{}>.
|
||||
|
||||
|
||||
=item B<{#}>
|
||||
=item B<{#}> (alpha testing)
|
||||
|
||||
Sequence number of the job to run. This replacement string will be
|
||||
replaced by the sequence number of the job being run. It contains the
|
||||
|
@ -171,7 +171,7 @@ The replacement string B<{#}> can be changed with B<--seqreplace>.
|
|||
To understand replacement strings see B<{}>.
|
||||
|
||||
|
||||
=item B<{%}>
|
||||
=item B<{%}> (alpha testing)
|
||||
|
||||
Job slot number. This replacement string will be replaced by the job's
|
||||
slot number between 1 and number of jobs to run in parallel. There
|
||||
|
@ -556,7 +556,7 @@ If I<eof-str> is omitted, there is no end of file string. If neither
|
|||
B<-E> nor B<-e> is used, no end of file string is used.
|
||||
|
||||
|
||||
=item B<--env> I<var>
|
||||
=item B<--env> I<var> (alpha testing)
|
||||
|
||||
Copy environment variable I<var>. This will copy I<var> to the
|
||||
environment that the command is run in. This is especially useful for
|
||||
|
@ -1924,7 +1924,6 @@ See also B<--header>.
|
|||
|
||||
=back
|
||||
|
||||
|
||||
=head1 EXAMPLE: Working as xargs -n1. Argument appending
|
||||
|
||||
GNU B<parallel> can work similar to B<xargs -n1>.
|
||||
|
@ -2118,6 +2117,25 @@ And then call as:
|
|||
env_parallel -S server doubleit ::: 1 2 3 ::: a b
|
||||
|
||||
|
||||
=head1 EXAMPLE: Function tester
|
||||
|
||||
To test a program with different parameters:
|
||||
|
||||
tester() {
|
||||
if (eval "$@") >&/dev/null; then
|
||||
perl -e 'printf "\033[30;102m[ OK ]\033[0m @ARGV\n"' "$@"
|
||||
else
|
||||
perl -e 'printf "\033[30;101m[FAIL]\033[0m @ARGV\n"' "$@"
|
||||
fi
|
||||
}
|
||||
export -f tester
|
||||
parallel tester my_program ::: arg1 arg2
|
||||
parallel tester exit ::: 1 0 2 0
|
||||
|
||||
If B<my_program> fails a red FAIL will be printed followed by the failing
|
||||
command; otherwise a green OK will be printed followed by the command.
|
||||
|
||||
|
||||
=head1 EXAMPLE: Removing file extension when processing files
|
||||
|
||||
When processing files removing the file extension using B<{.}> is
|
||||
|
|
2
src/sql
2
src/sql
|
@ -566,7 +566,7 @@ $Global::Initfile && unlink $Global::Initfile;
|
|||
exit ($err);
|
||||
|
||||
sub parse_options {
|
||||
$Global::version = 20140922;
|
||||
$Global::version = 20141009;
|
||||
$Global::progname = 'sql';
|
||||
|
||||
# This must be done first as this may exec myself
|
||||
|
|
|
@ -26,11 +26,7 @@ echo '### bug #42725: csh with \n in variables'
|
|||
CSH/TCSH DO NOT SUPPORT newlines IN VARIABLES/FUNCTIONS. Unset not_csh
|
||||
CSH/TCSH DO NOT SUPPORT newlines IN VARIABLES/FUNCTIONS. Unset not_csh
|
||||
This is not csh/tcsh
|
||||
Unmatched ".
|
||||
\} || export not_csh=\(\)\ \{\ \ echo\ This\ is\ not\ csh/tcsh: Command not found.
|
||||
Unmatched ".
|
||||
parallel: Warning: Could not figure out number of cpus on csh@lo (). Using 1.
|
||||
Unmatched ".
|
||||
\} || export not_csh=\(\)\ \{\ \ echo\ This\ is\ not\ csh/tcsh: Command not found.
|
||||
Unmatched ".
|
||||
parallel: Warning: Could not figure out number of cpus on tcsh@lo (). Using 1.
|
||||
Badly placed ()'s.
|
||||
}: Command not found.
|
||||
Badly placed ()'s.
|
||||
}: Command not found.
|
||||
|
|
|
@ -5,6 +5,7 @@ When using programs that use GNU Parallel to process data for publication please
|
|||
;login: The USENIX Magazine, February 2011:42-47.
|
||||
|
||||
This helps funding further development; and it won't cost you a cent.
|
||||
Or you can get GNU Parallel without this requirement by paying 10000 EUR.
|
||||
|
||||
To silence this citation notice run 'parallel --bibtex' once or use '--no-notice'.
|
||||
|
||||
|
@ -19,6 +20,7 @@ When using programs that use GNU Parallel to process data for publication please
|
|||
;login: The USENIX Magazine, February 2011:42-47.
|
||||
|
||||
This helps funding further development; and it won't cost you a cent.
|
||||
Or you can get GNU Parallel without this requirement by paying 10000 EUR.
|
||||
|
||||
To silence this citation notice run 'parallel --bibtex' once or use '--no-notice'.
|
||||
|
||||
|
|
|
@ -53,8 +53,6 @@ echo '### test round-robin'; nice seq 1000 | $NICEPAR --block 1k --pipe --roun
|
|||
echo '### --version must have higher priority than retired options'
|
||||
### --version must have higher priority than retired options
|
||||
$NICEPAR --version -g -Y -U -W -T | tail
|
||||
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.
|
||||
GNU parallel comes with no warranty.
|
||||
|
||||
Web site: http://www.gnu.org/software/parallel
|
||||
|
@ -63,6 +61,8 @@ When using programs that use GNU Parallel to process data for publication please
|
|||
|
||||
O. Tange (2011): GNU Parallel - The Command-Line Power Tool,
|
||||
;login: The USENIX Magazine, February 2011:42-47.
|
||||
|
||||
Or you can get GNU Parallel without this requirement by paying 10000 EUR.
|
||||
echo '### bug #39787: --xargs broken'
|
||||
### bug #39787: --xargs broken
|
||||
nice perl -e 'for(1..30000){print "$_\n"}' | $NICEPAR --xargs -k echo | perl -ne 'print length $_,"\n"'
|
||||
|
|
|
@ -210,6 +210,8 @@ When using programs that use GNU Parallel to process data for publication please
|
|||
|
||||
O. Tange (2011): GNU Parallel - The Command-Line Power Tool,
|
||||
;login: The USENIX Magazine, February 2011:42-47.
|
||||
|
||||
Or you can get GNU Parallel without this requirement by paying 10000 EUR.
|
||||
parallel: Error: Parsing of --jobs/-j/--max-procs/-P failed.
|
||||
echo '### Test of -j filename'; echo 3 >/tmp/jobs_to_run1; parallel -j /tmp/jobs_to_run1 -v sleep {} ::: 10 8 6 5 4; # Should give 6 8 10 5 4
|
||||
### Test of -j filename
|
||||
|
|
|
@ -6,6 +6,7 @@ When using programs that use GNU Parallel to process data for publication please
|
|||
;login: The USENIX Magazine, February 2011:42-47.
|
||||
|
||||
This helps funding further development; and it won't cost you a cent.
|
||||
Or you can get GNU Parallel without this requirement by paying 10000 EUR.
|
||||
|
||||
To silence this citation notice run 'parallel --bibtex' once or use '--no-notice'.
|
||||
|
||||
|
@ -20,6 +21,7 @@ When using programs that use GNU Parallel to process data for publication please
|
|||
;login: The USENIX Magazine, February 2011:42-47.
|
||||
|
||||
This helps funding further development; and it won't cost you a cent.
|
||||
Or you can get GNU Parallel without this requirement by paying 10000 EUR.
|
||||
|
||||
To silence this citation notice run 'parallel --bibtex' once or use '--no-notice'.
|
||||
|
||||
|
@ -260,6 +262,7 @@ When using programs that use GNU Parallel to process data for publication please
|
|||
;login: The USENIX Magazine, February 2011:42-47.
|
||||
|
||||
This helps funding further development; and it won't cost you a cent.
|
||||
Or you can get GNU Parallel without this requirement by paying 10000 EUR.
|
||||
|
||||
To silence this citation notice run 'parallel --bibtex' once or use '--no-notice'.
|
||||
|
||||
|
@ -278,6 +281,7 @@ When using programs that use GNU Parallel to process data for publication please
|
|||
;login: The USENIX Magazine, February 2011:42-47.
|
||||
|
||||
This helps funding further development; and it won't cost you a cent.
|
||||
Or you can get GNU Parallel without this requirement by paying 10000 EUR.
|
||||
|
||||
To silence this citation notice run 'parallel --bibtex' once or use '--no-notice'.
|
||||
|
||||
|
@ -383,10 +387,10 @@ line 2
|
|||
### Test --no-run-if-empty and -r: This should give no output
|
||||
### Test --help and -h: Help output (just check we get the same amount of lines)
|
||||
Output from -h and --help
|
||||
31
|
||||
31
|
||||
33
|
||||
33
|
||||
### Test --version: Version output (just check we get the same amount of lines)
|
||||
12
|
||||
14
|
||||
### Test --verbose and -t
|
||||
echo bar
|
||||
echo car
|
||||
|
|
|
@ -76,15 +76,15 @@ ls: tmp/parallel.file*: No such file or directory
|
|||
OK
|
||||
Input for ssh
|
||||
parallel@parallel-server1 mkdir -p ./.
|
||||
-l parallel parallel-server1 rsync --server -lDrRze.iLs . ./.
|
||||
-l parallel parallel-server1 rsync --server -lDrRze.iLsfx . ./.
|
||||
-tt -oLogLevel=quiet parallel@parallel-server1 eval `echo $SHELL | grep "/t\{0,1\}csh" > /dev/null && echo setenv PARALLEL_SEQ 2\; setenv PARALLEL_PID 00000 || echo PARALLEL_SEQ=2\;export PARALLEL_SEQ\; PARALLEL_PID=00000\;export PARALLEL_PID` ; tty >/dev/null && stty isig -onlcr -echo;cat tmp/parallel.file.'
|
||||
'newline2 > tmp/parallel.file.'
|
||||
'newline2.out;cat tmp/parallel.file.'
|
||||
'newline2 > tmp/parallel.file.'
|
||||
'newline2.out2
|
||||
-l parallel parallel-server1 cd ././tmp; rsync --server --sender -lDrRze.iLs . ./parallel.file.'
|
||||
-l parallel parallel-server1 cd ././tmp; rsync --server --sender -lDrRze.iLsfx . ./parallel.file.'
|
||||
'newline2.out
|
||||
-l parallel parallel-server1 cd ././tmp; rsync --server --sender -lDrRze.iLs . ./parallel.file.'
|
||||
-l parallel parallel-server1 cd ././tmp; rsync --server --sender -lDrRze.iLsfx . ./parallel.file.'
|
||||
'newline2.out2
|
||||
parallel@parallel-server1 (rm -f ./tmp/parallel.file.'
|
||||
'newline2; rmdir ./tmp/ ./ 2>/dev/null;)
|
||||
|
@ -93,15 +93,15 @@ parallel@parallel-server1 (rm -f ./tmp/parallel.file.'
|
|||
parallel@parallel-server1 (rm -f ./tmp/parallel.file.'
|
||||
'newline2.out2; rmdir ./tmp/ ./ 2>/dev/null;)
|
||||
parallel@parallel-server2 mkdir -p ./.
|
||||
-l parallel parallel-server2 rsync --server -lDrRze.iLs . ./.
|
||||
-l parallel parallel-server2 rsync --server -lDrRze.iLsfx . ./.
|
||||
-tt -oLogLevel=quiet parallel@parallel-server2 eval `echo $SHELL | grep "/t\{0,1\}csh" > /dev/null && echo setenv PARALLEL_SEQ 1\; setenv PARALLEL_PID 00000 || echo PARALLEL_SEQ=1\;export PARALLEL_SEQ\; PARALLEL_PID=00000\;export PARALLEL_PID` ; tty >/dev/null && stty isig -onlcr -echo;cat tmp/parallel.file.'
|
||||
'newline1 > tmp/parallel.file.'
|
||||
'newline1.out;cat tmp/parallel.file.'
|
||||
'newline1 > tmp/parallel.file.'
|
||||
'newline1.out2
|
||||
-l parallel parallel-server2 cd ././tmp; rsync --server --sender -lDrRze.iLs . ./parallel.file.'
|
||||
-l parallel parallel-server2 cd ././tmp; rsync --server --sender -lDrRze.iLsfx . ./parallel.file.'
|
||||
'newline1.out
|
||||
-l parallel parallel-server2 cd ././tmp; rsync --server --sender -lDrRze.iLs . ./parallel.file.'
|
||||
-l parallel parallel-server2 cd ././tmp; rsync --server --sender -lDrRze.iLsfx . ./parallel.file.'
|
||||
'newline1.out2
|
||||
parallel@parallel-server2 (rm -f ./tmp/parallel.file.'
|
||||
'newline1; rmdir ./tmp/ ./ 2>/dev/null;)
|
||||
|
|
Loading…
Reference in a new issue