mirror of
https://git.savannah.gnu.org/git/parallel.git
synced 2024-11-21 21:47:54 +00:00
Release candidate 20101113
This commit is contained in:
parent
7c1fb94ddb
commit
90c333085d
67
NEWS
67
NEWS
|
@ -1,3 +1,70 @@
|
|||
20101113
|
||||
|
||||
* Using -j myfile the number of jobs can be changed while GNU Parallel
|
||||
is running simply by changing the content of myfile.
|
||||
|
||||
* Implemented --profile to use different .parallel/config for
|
||||
different situations.
|
||||
|
||||
* Ugly newlines in $PARALLEL and .parallel/config are no longer
|
||||
needed. Instead you have to use \ in front of special shell
|
||||
characters.
|
||||
|
||||
* --workdir puts the files transferred to remote machines in a
|
||||
specified directory.
|
||||
|
||||
* $PARALLEL_PID is set to the process id of GNU Parallel.
|
||||
|
||||
* $PARALLEL_SEQ is set to the sequence number of the job.
|
||||
|
||||
* -v now only shows the command to run. Use -v -v to show the
|
||||
ssh/rsync wrapping.
|
||||
|
||||
* Slow spawning error is now only a warning.
|
||||
|
||||
* If stdin is a tty and input is read from stdin you now get a
|
||||
warning.
|
||||
|
||||
* GNU sql: \n and \x0a in arguments is replaced with newline.
|
||||
|
||||
* Patch for Debian package and spelling mistakes. Thanks to Rogério
|
||||
Brito <rbrito at ime dot usp dot br>
|
||||
|
||||
* Mac OS X Homebrew package. Thanks to Jonathan Palardy <jonathan dot
|
||||
palardy at gmail dot com>
|
||||
|
||||
* FreeBSD port. Thanks to Chris Howey <howeyc at gmail dot com>
|
||||
|
||||
* Pardus package. Thanks to Fethican Coşkuner
|
||||
<fethicanc at gmail dot com>
|
||||
|
||||
* First review in Chinese. Thanks to 曾義峰:
|
||||
http://antbsd.twbbs.org/~ant/wordpress/?p=2876
|
||||
|
||||
* First review in print:
|
||||
http://www.linux-magazine.com/Issues/2010 Nov 2010
|
||||
|
||||
* First review in Spanish:
|
||||
http://www.muylinux.com/2010/10/18/gnu-parallel-computacion-paralela-a-golpe-de-comando
|
||||
|
||||
* First review in Dutch thanks to Koen Vervloesem <koen at vervloesem
|
||||
dot eu>:
|
||||
http://techworld.nl/technologie/33493/gebruik-al-je-processorkernen-met-gnu-parallel.html
|
||||
|
||||
* Blog review thanks to R. Tyler Croy <tyler at monkeypox dot org>:
|
||||
http://unethicalblogger.com/posts/2010/11/gnuparallel_changed_my_life
|
||||
|
||||
* 5000 views of the intro video:
|
||||
http://www.youtube.com/watch?v=OpaiGYxkSuQ
|
||||
|
||||
* As usual a bunch of bugfixes and more usage examples in the man
|
||||
page.
|
||||
|
||||
* GNU Parallel was presented at FSCONS 2010-11-07:
|
||||
http://www.fscons.org/fs/gnu-parallel Hopefully the
|
||||
video will be online soon.
|
||||
|
||||
|
||||
20100922
|
||||
|
||||
* See GNU Parallel live at FSCONS 2010-11-07:
|
||||
|
|
4
aclocal.m4
vendored
4
aclocal.m4
vendored
|
@ -13,8 +13,8 @@
|
|||
|
||||
m4_ifndef([AC_AUTOCONF_VERSION],
|
||||
[m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
|
||||
m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.65],,
|
||||
[m4_warning([this file was generated for autoconf 2.65.
|
||||
m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.67],,
|
||||
[m4_warning([this file was generated for autoconf 2.67.
|
||||
You have another version of autoconf. It may work, but is not guaranteed to.
|
||||
If you have problems, you may need to regenerate the build system entirely.
|
||||
To do so, use the procedure documented by the package, typically `autoreconf'.])])
|
||||
|
|
257
configure
vendored
257
configure
vendored
|
@ -1,13 +1,13 @@
|
|||
#! /bin/sh
|
||||
# Guess values for system-dependent variables and create Makefiles.
|
||||
# Generated by GNU Autoconf 2.65 for parallel 20100922.
|
||||
# Generated by GNU Autoconf 2.67 for parallel 20101113.
|
||||
#
|
||||
# Report bugs to <bug-parallel@gnu.org>.
|
||||
#
|
||||
#
|
||||
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
|
||||
# 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
|
||||
# Inc.
|
||||
# 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software
|
||||
# Foundation, Inc.
|
||||
#
|
||||
#
|
||||
# This configure script is free software; the Free Software Foundation
|
||||
|
@ -318,7 +318,7 @@ $as_echo X"$as_dir" |
|
|||
test -d "$as_dir" && break
|
||||
done
|
||||
test -z "$as_dirs" || eval "mkdir $as_dirs"
|
||||
} || test -d "$as_dir" || as_fn_error "cannot create directory $as_dir"
|
||||
} || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir"
|
||||
|
||||
|
||||
} # as_fn_mkdir_p
|
||||
|
@ -358,19 +358,19 @@ else
|
|||
fi # as_fn_arith
|
||||
|
||||
|
||||
# as_fn_error ERROR [LINENO LOG_FD]
|
||||
# ---------------------------------
|
||||
# as_fn_error STATUS ERROR [LINENO LOG_FD]
|
||||
# ----------------------------------------
|
||||
# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are
|
||||
# provided, also output the error to LOG_FD, referencing LINENO. Then exit the
|
||||
# script with status $?, using 1 if that was 0.
|
||||
# script with STATUS, using 1 if that was 0.
|
||||
as_fn_error ()
|
||||
{
|
||||
as_status=$?; test $as_status -eq 0 && as_status=1
|
||||
if test "$3"; then
|
||||
as_lineno=${as_lineno-"$2"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
|
||||
$as_echo "$as_me:${as_lineno-$LINENO}: error: $1" >&$3
|
||||
as_status=$1; test $as_status -eq 0 && as_status=1
|
||||
if test "$4"; then
|
||||
as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
|
||||
$as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
|
||||
fi
|
||||
$as_echo "$as_me: error: $1" >&2
|
||||
$as_echo "$as_me: error: $2" >&2
|
||||
as_fn_exit $as_status
|
||||
} # as_fn_error
|
||||
|
||||
|
@ -532,7 +532,7 @@ test -n "$DJDIR" || exec 7<&0 </dev/null
|
|||
exec 6>&1
|
||||
|
||||
# Name of the host.
|
||||
# hostname on some systems (SVR3.2, Linux) returns a bogus exit status,
|
||||
# hostname on some systems (SVR3.2, old GNU/Linux) returns a bogus exit status,
|
||||
# so uname gets run too.
|
||||
ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q`
|
||||
|
||||
|
@ -551,8 +551,8 @@ MAKEFLAGS=
|
|||
# Identity of this package.
|
||||
PACKAGE_NAME='parallel'
|
||||
PACKAGE_TARNAME='parallel'
|
||||
PACKAGE_VERSION='20100922'
|
||||
PACKAGE_STRING='parallel 20100922'
|
||||
PACKAGE_VERSION='20101113'
|
||||
PACKAGE_STRING='parallel 20101113'
|
||||
PACKAGE_BUGREPORT='bug-parallel@gnu.org'
|
||||
PACKAGE_URL=''
|
||||
|
||||
|
@ -688,7 +688,8 @@ do
|
|||
fi
|
||||
|
||||
case $ac_option in
|
||||
*=*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;;
|
||||
*=?*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;;
|
||||
*=) ac_optarg= ;;
|
||||
*) ac_optarg=yes ;;
|
||||
esac
|
||||
|
||||
|
@ -734,7 +735,7 @@ do
|
|||
ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
|
||||
# Reject names that are not valid shell variable names.
|
||||
expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
|
||||
as_fn_error "invalid feature name: $ac_useropt"
|
||||
as_fn_error $? "invalid feature name: $ac_useropt"
|
||||
ac_useropt_orig=$ac_useropt
|
||||
ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
|
||||
case $ac_user_opts in
|
||||
|
@ -760,7 +761,7 @@ do
|
|||
ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
|
||||
# Reject names that are not valid shell variable names.
|
||||
expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
|
||||
as_fn_error "invalid feature name: $ac_useropt"
|
||||
as_fn_error $? "invalid feature name: $ac_useropt"
|
||||
ac_useropt_orig=$ac_useropt
|
||||
ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
|
||||
case $ac_user_opts in
|
||||
|
@ -964,7 +965,7 @@ do
|
|||
ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`
|
||||
# Reject names that are not valid shell variable names.
|
||||
expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
|
||||
as_fn_error "invalid package name: $ac_useropt"
|
||||
as_fn_error $? "invalid package name: $ac_useropt"
|
||||
ac_useropt_orig=$ac_useropt
|
||||
ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
|
||||
case $ac_user_opts in
|
||||
|
@ -980,7 +981,7 @@ do
|
|||
ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'`
|
||||
# Reject names that are not valid shell variable names.
|
||||
expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
|
||||
as_fn_error "invalid package name: $ac_useropt"
|
||||
as_fn_error $? "invalid package name: $ac_useropt"
|
||||
ac_useropt_orig=$ac_useropt
|
||||
ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
|
||||
case $ac_user_opts in
|
||||
|
@ -1010,8 +1011,8 @@ do
|
|||
| --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
|
||||
x_libraries=$ac_optarg ;;
|
||||
|
||||
-*) as_fn_error "unrecognized option: \`$ac_option'
|
||||
Try \`$0 --help' for more information."
|
||||
-*) as_fn_error $? "unrecognized option: \`$ac_option'
|
||||
Try \`$0 --help' for more information"
|
||||
;;
|
||||
|
||||
*=*)
|
||||
|
@ -1019,7 +1020,7 @@ Try \`$0 --help' for more information."
|
|||
# Reject names that are not valid shell variable names.
|
||||
case $ac_envvar in #(
|
||||
'' | [0-9]* | *[!_$as_cr_alnum]* )
|
||||
as_fn_error "invalid variable name: \`$ac_envvar'" ;;
|
||||
as_fn_error $? "invalid variable name: \`$ac_envvar'" ;;
|
||||
esac
|
||||
eval $ac_envvar=\$ac_optarg
|
||||
export $ac_envvar ;;
|
||||
|
@ -1037,13 +1038,13 @@ done
|
|||
|
||||
if test -n "$ac_prev"; then
|
||||
ac_option=--`echo $ac_prev | sed 's/_/-/g'`
|
||||
as_fn_error "missing argument to $ac_option"
|
||||
as_fn_error $? "missing argument to $ac_option"
|
||||
fi
|
||||
|
||||
if test -n "$ac_unrecognized_opts"; then
|
||||
case $enable_option_checking in
|
||||
no) ;;
|
||||
fatal) as_fn_error "unrecognized options: $ac_unrecognized_opts" ;;
|
||||
fatal) as_fn_error $? "unrecognized options: $ac_unrecognized_opts" ;;
|
||||
*) $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;;
|
||||
esac
|
||||
fi
|
||||
|
@ -1066,7 +1067,7 @@ do
|
|||
[\\/$]* | ?:[\\/]* ) continue;;
|
||||
NONE | '' ) case $ac_var in *prefix ) continue;; esac;;
|
||||
esac
|
||||
as_fn_error "expected an absolute directory name for --$ac_var: $ac_val"
|
||||
as_fn_error $? "expected an absolute directory name for --$ac_var: $ac_val"
|
||||
done
|
||||
|
||||
# There might be people who depend on the old broken behavior: `$host'
|
||||
|
@ -1080,8 +1081,8 @@ target=$target_alias
|
|||
if test "x$host_alias" != x; then
|
||||
if test "x$build_alias" = x; then
|
||||
cross_compiling=maybe
|
||||
$as_echo "$as_me: WARNING: If you wanted to set the --build type, don't use --host.
|
||||
If a cross compiler is detected then cross compile mode will be used." >&2
|
||||
$as_echo "$as_me: WARNING: if you wanted to set the --build type, don't use --host.
|
||||
If a cross compiler is detected then cross compile mode will be used" >&2
|
||||
elif test "x$build_alias" != "x$host_alias"; then
|
||||
cross_compiling=yes
|
||||
fi
|
||||
|
@ -1096,9 +1097,9 @@ test "$silent" = yes && exec 6>/dev/null
|
|||
ac_pwd=`pwd` && test -n "$ac_pwd" &&
|
||||
ac_ls_di=`ls -di .` &&
|
||||
ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` ||
|
||||
as_fn_error "working directory cannot be determined"
|
||||
as_fn_error $? "working directory cannot be determined"
|
||||
test "X$ac_ls_di" = "X$ac_pwd_ls_di" ||
|
||||
as_fn_error "pwd does not report name of working directory"
|
||||
as_fn_error $? "pwd does not report name of working directory"
|
||||
|
||||
|
||||
# Find the source files, if location was not specified.
|
||||
|
@ -1137,11 +1138,11 @@ else
|
|||
fi
|
||||
if test ! -r "$srcdir/$ac_unique_file"; then
|
||||
test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .."
|
||||
as_fn_error "cannot find sources ($ac_unique_file) in $srcdir"
|
||||
as_fn_error $? "cannot find sources ($ac_unique_file) in $srcdir"
|
||||
fi
|
||||
ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work"
|
||||
ac_abs_confdir=`(
|
||||
cd "$srcdir" && test -r "./$ac_unique_file" || as_fn_error "$ac_msg"
|
||||
cd "$srcdir" && test -r "./$ac_unique_file" || as_fn_error $? "$ac_msg"
|
||||
pwd)`
|
||||
# When building in place, set srcdir=.
|
||||
if test "$ac_abs_confdir" = "$ac_pwd"; then
|
||||
|
@ -1167,7 +1168,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 20100922 to adapt to many kinds of systems.
|
||||
\`configure' configures parallel 20101113 to adapt to many kinds of systems.
|
||||
|
||||
Usage: $0 [OPTION]... [VAR=VALUE]...
|
||||
|
||||
|
@ -1233,7 +1234,7 @@ fi
|
|||
|
||||
if test -n "$ac_init_help"; then
|
||||
case $ac_init_help in
|
||||
short | recursive ) echo "Configuration of parallel 20100922:";;
|
||||
short | recursive ) echo "Configuration of parallel 20101113:";;
|
||||
esac
|
||||
cat <<\_ACEOF
|
||||
|
||||
|
@ -1300,10 +1301,10 @@ fi
|
|||
test -n "$ac_init_help" && exit $ac_status
|
||||
if $ac_init_version; then
|
||||
cat <<\_ACEOF
|
||||
parallel configure 20100922
|
||||
generated by GNU Autoconf 2.65
|
||||
parallel configure 20101113
|
||||
generated by GNU Autoconf 2.67
|
||||
|
||||
Copyright (C) 2009 Free Software Foundation, Inc.
|
||||
Copyright (C) 2010 Free Software Foundation, Inc.
|
||||
This configure script is free software; the Free Software Foundation
|
||||
gives unlimited permission to copy, distribute and modify it.
|
||||
_ACEOF
|
||||
|
@ -1317,8 +1318,8 @@ 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 20100922, which was
|
||||
generated by GNU Autoconf 2.65. Invocation command line was
|
||||
It was created by parallel $as_me 20101113, which was
|
||||
generated by GNU Autoconf 2.67. Invocation command line was
|
||||
|
||||
$ $0 $@
|
||||
|
||||
|
@ -1428,11 +1429,9 @@ trap 'exit_status=$?
|
|||
{
|
||||
echo
|
||||
|
||||
cat <<\_ASBOX
|
||||
## ---------------- ##
|
||||
$as_echo "## ---------------- ##
|
||||
## Cache variables. ##
|
||||
## ---------------- ##
|
||||
_ASBOX
|
||||
## ---------------- ##"
|
||||
echo
|
||||
# The following way of writing the cache mishandles newlines in values,
|
||||
(
|
||||
|
@ -1466,11 +1465,9 @@ $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
|
|||
)
|
||||
echo
|
||||
|
||||
cat <<\_ASBOX
|
||||
## ----------------- ##
|
||||
$as_echo "## ----------------- ##
|
||||
## Output variables. ##
|
||||
## ----------------- ##
|
||||
_ASBOX
|
||||
## ----------------- ##"
|
||||
echo
|
||||
for ac_var in $ac_subst_vars
|
||||
do
|
||||
|
@ -1483,11 +1480,9 @@ _ASBOX
|
|||
echo
|
||||
|
||||
if test -n "$ac_subst_files"; then
|
||||
cat <<\_ASBOX
|
||||
## ------------------- ##
|
||||
$as_echo "## ------------------- ##
|
||||
## File substitutions. ##
|
||||
## ------------------- ##
|
||||
_ASBOX
|
||||
## ------------------- ##"
|
||||
echo
|
||||
for ac_var in $ac_subst_files
|
||||
do
|
||||
|
@ -1501,11 +1496,9 @@ _ASBOX
|
|||
fi
|
||||
|
||||
if test -s confdefs.h; then
|
||||
cat <<\_ASBOX
|
||||
## ----------- ##
|
||||
$as_echo "## ----------- ##
|
||||
## confdefs.h. ##
|
||||
## ----------- ##
|
||||
_ASBOX
|
||||
## ----------- ##"
|
||||
echo
|
||||
cat confdefs.h
|
||||
echo
|
||||
|
@ -1560,7 +1553,12 @@ _ACEOF
|
|||
ac_site_file1=NONE
|
||||
ac_site_file2=NONE
|
||||
if test -n "$CONFIG_SITE"; then
|
||||
ac_site_file1=$CONFIG_SITE
|
||||
# We do not want a PATH search for config.site.
|
||||
case $CONFIG_SITE in #((
|
||||
-*) ac_site_file1=./$CONFIG_SITE;;
|
||||
*/*) ac_site_file1=$CONFIG_SITE;;
|
||||
*) ac_site_file1=./$CONFIG_SITE;;
|
||||
esac
|
||||
elif test "x$prefix" != xNONE; then
|
||||
ac_site_file1=$prefix/share/config.site
|
||||
ac_site_file2=$prefix/etc/config.site
|
||||
|
@ -1575,7 +1573,11 @@ do
|
|||
{ $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5
|
||||
$as_echo "$as_me: loading site script $ac_site_file" >&6;}
|
||||
sed 's/^/| /' "$ac_site_file" >&5
|
||||
. "$ac_site_file"
|
||||
. "$ac_site_file" \
|
||||
|| { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
|
||||
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
|
||||
as_fn_error $? "failed to load site script $ac_site_file
|
||||
See \`config.log' for more details" "$LINENO" 5 ; }
|
||||
fi
|
||||
done
|
||||
|
||||
|
@ -1651,7 +1653,7 @@ if $ac_cache_corrupted; then
|
|||
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5
|
||||
$as_echo "$as_me: error: changes in the environment can compromise the build" >&2;}
|
||||
as_fn_error "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5
|
||||
as_fn_error $? "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5
|
||||
fi
|
||||
## -------------------- ##
|
||||
## Main body of script. ##
|
||||
|
@ -1668,16 +1670,22 @@ am__api_version='1.11'
|
|||
|
||||
ac_aux_dir=
|
||||
for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do
|
||||
for ac_t in install-sh install.sh shtool; do
|
||||
if test -f "$ac_dir/$ac_t"; then
|
||||
if test -f "$ac_dir/install-sh"; then
|
||||
ac_aux_dir=$ac_dir
|
||||
ac_install_sh="$ac_aux_dir/$ac_t -c"
|
||||
break 2
|
||||
ac_install_sh="$ac_aux_dir/install-sh -c"
|
||||
break
|
||||
elif test -f "$ac_dir/install.sh"; then
|
||||
ac_aux_dir=$ac_dir
|
||||
ac_install_sh="$ac_aux_dir/install.sh -c"
|
||||
break
|
||||
elif test -f "$ac_dir/shtool"; then
|
||||
ac_aux_dir=$ac_dir
|
||||
ac_install_sh="$ac_aux_dir/shtool install -c"
|
||||
break
|
||||
fi
|
||||
done
|
||||
done
|
||||
if test -z "$ac_aux_dir"; then
|
||||
as_fn_error "cannot find install-sh, install.sh, or shtool in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" "$LINENO" 5
|
||||
as_fn_error $? "cannot find install-sh, install.sh, or shtool in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" "$LINENO" 5
|
||||
fi
|
||||
|
||||
# These three variables are undocumented and unsupported,
|
||||
|
@ -1793,11 +1801,11 @@ am_lf='
|
|||
'
|
||||
case `pwd` in
|
||||
*[\\\"\#\$\&\'\`$am_lf]*)
|
||||
as_fn_error "unsafe absolute working directory name" "$LINENO" 5;;
|
||||
as_fn_error $? "unsafe absolute working directory name" "$LINENO" 5 ;;
|
||||
esac
|
||||
case $srcdir in
|
||||
*[\\\"\#\$\&\'\`$am_lf\ \ ]*)
|
||||
as_fn_error "unsafe srcdir value: \`$srcdir'" "$LINENO" 5;;
|
||||
as_fn_error $? "unsafe srcdir value: \`$srcdir'" "$LINENO" 5 ;;
|
||||
esac
|
||||
|
||||
# Do `set' in a subshell so we don't clobber the current shell's
|
||||
|
@ -1819,7 +1827,7 @@ if (
|
|||
# if, for instance, CONFIG_SHELL is bash and it inherits a
|
||||
# broken ls alias from the environment. This has actually
|
||||
# happened. Such a system could not be considered "sane".
|
||||
as_fn_error "ls -t appears to fail. Make sure there is not a broken
|
||||
as_fn_error $? "ls -t appears to fail. Make sure there is not a broken
|
||||
alias in your environment" "$LINENO" 5
|
||||
fi
|
||||
|
||||
|
@ -1829,7 +1837,7 @@ then
|
|||
# Ok.
|
||||
:
|
||||
else
|
||||
as_fn_error "newly created file is older than distributed files!
|
||||
as_fn_error $? "newly created file is older than distributed files!
|
||||
Check your system clock" "$LINENO" 5
|
||||
fi
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
|
||||
|
@ -2067,7 +2075,7 @@ done
|
|||
$as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; }
|
||||
set x ${MAKE-make}
|
||||
ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'`
|
||||
if { as_var=ac_cv_prog_make_${ac_make}_set; eval "test \"\${$as_var+set}\" = set"; }; then :
|
||||
if eval "test \"\${ac_cv_prog_make_${ac_make}_set+set}\"" = set; then :
|
||||
$as_echo_n "(cached) " >&6
|
||||
else
|
||||
cat >conftest.make <<\_ACEOF
|
||||
|
@ -2109,7 +2117,7 @@ if test "`cd $srcdir && pwd`" != "`pwd`"; then
|
|||
am__isrc=' -I$(srcdir)'
|
||||
# test to see if srcdir already configured
|
||||
if test -f $srcdir/config.status; then
|
||||
as_fn_error "source directory already configured; run \"make distclean\" there first" "$LINENO" 5
|
||||
as_fn_error $? "source directory already configured; run \"make distclean\" there first" "$LINENO" 5
|
||||
fi
|
||||
fi
|
||||
|
||||
|
@ -2125,7 +2133,7 @@ fi
|
|||
|
||||
# Define the identity of the package.
|
||||
PACKAGE='parallel'
|
||||
VERSION='20100922'
|
||||
VERSION='20101113'
|
||||
|
||||
|
||||
cat >>confdefs.h <<_ACEOF
|
||||
|
@ -2252,6 +2260,7 @@ DEFS=-DHAVE_CONFIG_H
|
|||
|
||||
ac_libobjs=
|
||||
ac_ltlibobjs=
|
||||
U=
|
||||
for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue
|
||||
# 1. Remove the extension, and $U if already installed.
|
||||
ac_script='s/\$U\././;s/\.o$//;s/\.obj$//'
|
||||
|
@ -2414,19 +2423,19 @@ export LANGUAGE
|
|||
(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
|
||||
|
||||
|
||||
# as_fn_error ERROR [LINENO LOG_FD]
|
||||
# ---------------------------------
|
||||
# as_fn_error STATUS ERROR [LINENO LOG_FD]
|
||||
# ----------------------------------------
|
||||
# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are
|
||||
# provided, also output the error to LOG_FD, referencing LINENO. Then exit the
|
||||
# script with status $?, using 1 if that was 0.
|
||||
# script with STATUS, using 1 if that was 0.
|
||||
as_fn_error ()
|
||||
{
|
||||
as_status=$?; test $as_status -eq 0 && as_status=1
|
||||
if test "$3"; then
|
||||
as_lineno=${as_lineno-"$2"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
|
||||
$as_echo "$as_me:${as_lineno-$LINENO}: error: $1" >&$3
|
||||
as_status=$1; test $as_status -eq 0 && as_status=1
|
||||
if test "$4"; then
|
||||
as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
|
||||
$as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
|
||||
fi
|
||||
$as_echo "$as_me: error: $1" >&2
|
||||
$as_echo "$as_me: error: $2" >&2
|
||||
as_fn_exit $as_status
|
||||
} # as_fn_error
|
||||
|
||||
|
@ -2622,7 +2631,7 @@ $as_echo X"$as_dir" |
|
|||
test -d "$as_dir" && break
|
||||
done
|
||||
test -z "$as_dirs" || eval "mkdir $as_dirs"
|
||||
} || test -d "$as_dir" || as_fn_error "cannot create directory $as_dir"
|
||||
} || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir"
|
||||
|
||||
|
||||
} # as_fn_mkdir_p
|
||||
|
@ -2675,8 +2684,8 @@ 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 20100922, which was
|
||||
generated by GNU Autoconf 2.65. Invocation command line was
|
||||
This file was extended by parallel $as_me 20101113, which was
|
||||
generated by GNU Autoconf 2.67. Invocation command line was
|
||||
|
||||
CONFIG_FILES = $CONFIG_FILES
|
||||
CONFIG_HEADERS = $CONFIG_HEADERS
|
||||
|
@ -2737,11 +2746,11 @@ _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 20100922
|
||||
configured by $0, generated by GNU Autoconf 2.65,
|
||||
parallel config.status 20101113
|
||||
configured by $0, generated by GNU Autoconf 2.67,
|
||||
with options \\"\$ac_cs_config\\"
|
||||
|
||||
Copyright (C) 2009 Free Software Foundation, Inc.
|
||||
Copyright (C) 2010 Free Software Foundation, Inc.
|
||||
This config.status script is free software; the Free Software Foundation
|
||||
gives unlimited permission to copy, distribute and modify it."
|
||||
|
||||
|
@ -2759,11 +2768,16 @@ ac_need_defaults=:
|
|||
while test $# != 0
|
||||
do
|
||||
case $1 in
|
||||
--*=*)
|
||||
--*=?*)
|
||||
ac_option=`expr "X$1" : 'X\([^=]*\)='`
|
||||
ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'`
|
||||
ac_shift=:
|
||||
;;
|
||||
--*=)
|
||||
ac_option=`expr "X$1" : 'X\([^=]*\)='`
|
||||
ac_optarg=
|
||||
ac_shift=:
|
||||
;;
|
||||
*)
|
||||
ac_option=$1
|
||||
ac_optarg=$2
|
||||
|
@ -2785,6 +2799,7 @@ do
|
|||
$ac_shift
|
||||
case $ac_optarg in
|
||||
*\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
|
||||
'') as_fn_error $? "missing file argument" ;;
|
||||
esac
|
||||
as_fn_append CONFIG_FILES " '$ac_optarg'"
|
||||
ac_need_defaults=false;;
|
||||
|
@ -2797,7 +2812,7 @@ do
|
|||
ac_need_defaults=false;;
|
||||
--he | --h)
|
||||
# Conflict between --help and --header
|
||||
as_fn_error "ambiguous option: \`$1'
|
||||
as_fn_error $? "ambiguous option: \`$1'
|
||||
Try \`$0 --help' for more information.";;
|
||||
--help | --hel | -h )
|
||||
$as_echo "$ac_cs_usage"; exit ;;
|
||||
|
@ -2806,7 +2821,7 @@ Try \`$0 --help' for more information.";;
|
|||
ac_cs_silent=: ;;
|
||||
|
||||
# This is an error.
|
||||
-*) as_fn_error "unrecognized option: \`$1'
|
||||
-*) as_fn_error $? "unrecognized option: \`$1'
|
||||
Try \`$0 --help' for more information." ;;
|
||||
|
||||
*) as_fn_append ac_config_targets " $1"
|
||||
|
@ -2859,7 +2874,7 @@ do
|
|||
"Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;;
|
||||
"src/Makefile") CONFIG_FILES="$CONFIG_FILES src/Makefile" ;;
|
||||
|
||||
*) as_fn_error "invalid argument: \`$ac_config_target'" "$LINENO" 5;;
|
||||
*) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5 ;;
|
||||
esac
|
||||
done
|
||||
|
||||
|
@ -2896,7 +2911,7 @@ $debug ||
|
|||
{
|
||||
tmp=./conf$$-$RANDOM
|
||||
(umask 077 && mkdir "$tmp")
|
||||
} || as_fn_error "cannot create a temporary directory in ." "$LINENO" 5
|
||||
} || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5
|
||||
|
||||
# Set up the scripts for CONFIG_FILES section.
|
||||
# No need to generate them if there are no CONFIG_FILES.
|
||||
|
@ -2913,7 +2928,7 @@ if test "x$ac_cr" = x; then
|
|||
fi
|
||||
ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' </dev/null 2>/dev/null`
|
||||
if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then
|
||||
ac_cs_awk_cr='\r'
|
||||
ac_cs_awk_cr='\\r'
|
||||
else
|
||||
ac_cs_awk_cr=$ac_cr
|
||||
fi
|
||||
|
@ -2927,18 +2942,18 @@ _ACEOF
|
|||
echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' &&
|
||||
echo "_ACEOF"
|
||||
} >conf$$subs.sh ||
|
||||
as_fn_error "could not make $CONFIG_STATUS" "$LINENO" 5
|
||||
ac_delim_num=`echo "$ac_subst_vars" | grep -c '$'`
|
||||
as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
|
||||
ac_delim_num=`echo "$ac_subst_vars" | grep -c '^'`
|
||||
ac_delim='%!_!# '
|
||||
for ac_last_try in false false false false false :; do
|
||||
. ./conf$$subs.sh ||
|
||||
as_fn_error "could not make $CONFIG_STATUS" "$LINENO" 5
|
||||
as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
|
||||
|
||||
ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X`
|
||||
if test $ac_delim_n = $ac_delim_num; then
|
||||
break
|
||||
elif $ac_last_try; then
|
||||
as_fn_error "could not make $CONFIG_STATUS" "$LINENO" 5
|
||||
as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
|
||||
else
|
||||
ac_delim="$ac_delim!$ac_delim _$ac_delim!! "
|
||||
fi
|
||||
|
@ -3027,20 +3042,28 @@ if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then
|
|||
else
|
||||
cat
|
||||
fi < "$tmp/subs1.awk" > "$tmp/subs.awk" \
|
||||
|| as_fn_error "could not setup config files machinery" "$LINENO" 5
|
||||
|| as_fn_error $? "could not setup config files machinery" "$LINENO" 5
|
||||
_ACEOF
|
||||
|
||||
# VPATH may cause trouble with some makes, so we remove $(srcdir),
|
||||
# ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and
|
||||
# VPATH may cause trouble with some makes, so we remove sole $(srcdir),
|
||||
# ${srcdir} and @srcdir@ entries from VPATH if srcdir is ".", strip leading and
|
||||
# trailing colons and then remove the whole line if VPATH becomes empty
|
||||
# (actually we leave an empty line to preserve line numbers).
|
||||
if test "x$srcdir" = x.; then
|
||||
ac_vpsub='/^[ ]*VPATH[ ]*=/{
|
||||
s/:*\$(srcdir):*/:/
|
||||
s/:*\${srcdir}:*/:/
|
||||
s/:*@srcdir@:*/:/
|
||||
s/^\([^=]*=[ ]*\):*/\1/
|
||||
ac_vpsub='/^[ ]*VPATH[ ]*=[ ]*/{
|
||||
h
|
||||
s///
|
||||
s/^/:/
|
||||
s/[ ]*$/:/
|
||||
s/:\$(srcdir):/:/g
|
||||
s/:\${srcdir}:/:/g
|
||||
s/:@srcdir@:/:/g
|
||||
s/^:*//
|
||||
s/:*$//
|
||||
x
|
||||
s/\(=[ ]*\).*/\1/
|
||||
G
|
||||
s/\n//
|
||||
s/^[^=]*=[ ]*$//
|
||||
}'
|
||||
fi
|
||||
|
@ -3068,7 +3091,7 @@ for ac_last_try in false false :; do
|
|||
if test -z "$ac_t"; then
|
||||
break
|
||||
elif $ac_last_try; then
|
||||
as_fn_error "could not make $CONFIG_HEADERS" "$LINENO" 5
|
||||
as_fn_error $? "could not make $CONFIG_HEADERS" "$LINENO" 5
|
||||
else
|
||||
ac_delim="$ac_delim!$ac_delim _$ac_delim!! "
|
||||
fi
|
||||
|
@ -3153,7 +3176,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
|
|||
_ACAWK
|
||||
_ACEOF
|
||||
cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
|
||||
as_fn_error "could not setup config headers machinery" "$LINENO" 5
|
||||
as_fn_error $? "could not setup config headers machinery" "$LINENO" 5
|
||||
fi # test -n "$CONFIG_HEADERS"
|
||||
|
||||
|
||||
|
@ -3166,7 +3189,7 @@ do
|
|||
esac
|
||||
case $ac_mode$ac_tag in
|
||||
:[FHL]*:*);;
|
||||
:L* | :C*:*) as_fn_error "invalid tag \`$ac_tag'" "$LINENO" 5;;
|
||||
:L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5 ;;
|
||||
:[FH]-) ac_tag=-:-;;
|
||||
:[FH]*) ac_tag=$ac_tag:$ac_tag.in;;
|
||||
esac
|
||||
|
@ -3194,7 +3217,7 @@ do
|
|||
[\\/$]*) false;;
|
||||
*) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";;
|
||||
esac ||
|
||||
as_fn_error "cannot find input file: \`$ac_f'" "$LINENO" 5;;
|
||||
as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5 ;;
|
||||
esac
|
||||
case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac
|
||||
as_fn_append ac_file_inputs " '$ac_f'"
|
||||
|
@ -3221,7 +3244,7 @@ $as_echo "$as_me: creating $ac_file" >&6;}
|
|||
|
||||
case $ac_tag in
|
||||
*:-:* | *:-) cat >"$tmp/stdin" \
|
||||
|| as_fn_error "could not create $ac_file" "$LINENO" 5 ;;
|
||||
|| as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;;
|
||||
esac
|
||||
;;
|
||||
esac
|
||||
|
@ -3358,22 +3381,22 @@ s&@MKDIR_P@&$ac_MKDIR_P&;t t
|
|||
$ac_datarootdir_hack
|
||||
"
|
||||
eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$tmp/subs.awk" >$tmp/out \
|
||||
|| as_fn_error "could not create $ac_file" "$LINENO" 5
|
||||
|| as_fn_error $? "could not create $ac_file" "$LINENO" 5
|
||||
|
||||
test -z "$ac_datarootdir_hack$ac_datarootdir_seen" &&
|
||||
{ ac_out=`sed -n '/\${datarootdir}/p' "$tmp/out"`; test -n "$ac_out"; } &&
|
||||
{ ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' "$tmp/out"`; test -z "$ac_out"; } &&
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir'
|
||||
which seems to be undefined. Please make sure it is defined." >&5
|
||||
which seems to be undefined. Please make sure it is defined" >&5
|
||||
$as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir'
|
||||
which seems to be undefined. Please make sure it is defined." >&2;}
|
||||
which seems to be undefined. Please make sure it is defined" >&2;}
|
||||
|
||||
rm -f "$tmp/stdin"
|
||||
case $ac_file in
|
||||
-) cat "$tmp/out" && rm -f "$tmp/out";;
|
||||
*) rm -f "$ac_file" && mv "$tmp/out" "$ac_file";;
|
||||
esac \
|
||||
|| as_fn_error "could not create $ac_file" "$LINENO" 5
|
||||
|| as_fn_error $? "could not create $ac_file" "$LINENO" 5
|
||||
;;
|
||||
:H)
|
||||
#
|
||||
|
@ -3384,19 +3407,19 @@ which seems to be undefined. Please make sure it is defined." >&2;}
|
|||
$as_echo "/* $configure_input */" \
|
||||
&& eval '$AWK -f "$tmp/defines.awk"' "$ac_file_inputs"
|
||||
} >"$tmp/config.h" \
|
||||
|| as_fn_error "could not create $ac_file" "$LINENO" 5
|
||||
|| as_fn_error $? "could not create $ac_file" "$LINENO" 5
|
||||
if diff "$ac_file" "$tmp/config.h" >/dev/null 2>&1; then
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5
|
||||
$as_echo "$as_me: $ac_file is unchanged" >&6;}
|
||||
else
|
||||
rm -f "$ac_file"
|
||||
mv "$tmp/config.h" "$ac_file" \
|
||||
|| as_fn_error "could not create $ac_file" "$LINENO" 5
|
||||
|| as_fn_error $? "could not create $ac_file" "$LINENO" 5
|
||||
fi
|
||||
else
|
||||
$as_echo "/* $configure_input */" \
|
||||
&& eval '$AWK -f "$tmp/defines.awk"' "$ac_file_inputs" \
|
||||
|| as_fn_error "could not create -" "$LINENO" 5
|
||||
|| as_fn_error $? "could not create -" "$LINENO" 5
|
||||
fi
|
||||
# Compute "$ac_file"'s index in $config_headers.
|
||||
_am_arg="$ac_file"
|
||||
|
@ -3445,7 +3468,7 @@ _ACEOF
|
|||
ac_clean_files=$ac_clean_files_save
|
||||
|
||||
test $ac_write_fail = 0 ||
|
||||
as_fn_error "write failure creating $CONFIG_STATUS" "$LINENO" 5
|
||||
as_fn_error $? "write failure creating $CONFIG_STATUS" "$LINENO" 5
|
||||
|
||||
|
||||
# configure is writing to config.log, and then calls config.status.
|
||||
|
@ -3466,7 +3489,7 @@ if test "$no_create" != yes; then
|
|||
exec 5>>config.log
|
||||
# Use ||, not &&, to avoid exiting from the if with $? = 1, which
|
||||
# would make configure fail if this is the last instruction.
|
||||
$ac_cs_success || as_fn_exit $?
|
||||
$ac_cs_success || as_fn_exit 1
|
||||
fi
|
||||
if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
AC_INIT([parallel], [20100922], [bug-parallel@gnu.org])
|
||||
AC_INIT([parallel], [20101113], [bug-parallel@gnu.org])
|
||||
AM_INIT_AUTOMAKE([-Wall -Werror foreign])
|
||||
AC_CONFIG_HEADERS([config.h])
|
||||
AC_CONFIG_FILES([
|
||||
|
|
|
@ -24,9 +24,9 @@ autoreconf --install -W gnu
|
|||
./configure
|
||||
make && sudo make install
|
||||
|
||||
== Unittest ==
|
||||
== Testsuite ==
|
||||
|
||||
cd unittest; make unittest
|
||||
cd testsuite; make
|
||||
|
||||
== Update NEWS ==
|
||||
|
||||
|
@ -119,7 +119,7 @@ cc:Peter Simons <simons@cryp.to>, Sandro Cazzaniga <kharec@mandriva.org>,
|
|||
Andrew McFague <amcfague@wgen.net>, Steven M. Christensen <sunfreeware@gmail.com>,
|
||||
Chris Howey <howeyc@gmail.com>, Fethican Coşkuner <fethicanc@gmail.com>,
|
||||
Rogério Brito <rbrito@ime.usp.br>, Jonathan Palardy <jonathan.palardy@gmail.com>,
|
||||
Koen Vervloesem <koen@vervloesem.eu>,
|
||||
Koen Vervloesem <koen@vervloesem.eu>, R. Tyler Croy <tyler@monkeypox.org>
|
||||
|
||||
Subject: GNU Parallel 2010XXXX released
|
||||
|
||||
|
@ -131,6 +131,23 @@ New in this release:
|
|||
* Using -j myfile the number of jobs can be changed while GNU Parallel
|
||||
is running simply by changing the content of myfile.
|
||||
|
||||
* Implemented --profile to use different .parallel/config for
|
||||
different situations.
|
||||
|
||||
* Ugly newlines in $PARALLEL and .parallel/config are no longer
|
||||
needed. Instead you have to use \ in front of special shell
|
||||
characters.
|
||||
|
||||
* --workdir puts the files transferred to remote machines in a
|
||||
specified directory.
|
||||
|
||||
* $PARALLEL_PID is set to the process id of GNU Parallel.
|
||||
|
||||
* $PARALLEL_SEQ is set to the sequence number of the job.
|
||||
|
||||
* -v now only shows the command to run. Use -v -v to show the
|
||||
ssh/rsync wrapping.
|
||||
|
||||
* Slow spawning error is now only a warning.
|
||||
|
||||
* If stdin is a tty and input is read from stdin you now get a
|
||||
|
@ -162,16 +179,18 @@ New in this release:
|
|||
dot eu>:
|
||||
http://techworld.nl/technologie/33493/gebruik-al-je-processorkernen-met-gnu-parallel.html
|
||||
|
||||
* 3500 views of the intro video:
|
||||
* Blog review thanks to R. Tyler Croy <tyler at monkeypox dot org>:
|
||||
http://unethicalblogger.com/posts/2010/11/gnuparallel_changed_my_life
|
||||
|
||||
* 5000 views of the intro video:
|
||||
http://www.youtube.com/watch?v=OpaiGYxkSuQ
|
||||
|
||||
* As usual a bunch of bugfixes and more usage examples in the man
|
||||
page.
|
||||
|
||||
Old in this release:
|
||||
|
||||
* See GNU Parallel live at FSCONS 2010-11-07:
|
||||
http://www.fscons.org/fs/gnu-parallel
|
||||
* GNU Parallel was presented at FSCONS 2010-11-07:
|
||||
http://www.fscons.org/fs/gnu-parallel Hopefully the
|
||||
video will be online soon.
|
||||
|
||||
|
||||
= About GNU Parallel =
|
||||
|
|
33
src/parallel
33
src/parallel
|
@ -858,6 +858,8 @@ not need this option.
|
|||
Verbose. Print the job to be run on STDOUT. Can be reversed with
|
||||
B<--silent>. See also B<-t>.
|
||||
|
||||
Use B<-v> B<-v> to print the wrapping ssh command when running remotely.
|
||||
|
||||
|
||||
=item B<--version>
|
||||
|
||||
|
@ -1091,7 +1093,7 @@ B<ls *.tar.gz| parallel -U {tar} 'echo {tar}|parallel "mkdir -p {.} ; tar -C {.}
|
|||
|
||||
Let us assume a website stores images like:
|
||||
|
||||
http://www.website.com/path/to/YYYYMMDD_##.jpg
|
||||
http://www.example.com/path/to/YYYYMMDD_##.jpg
|
||||
|
||||
where YYYYMMDD is the date and ## is the number 01-10. This will
|
||||
generate the past 30 days as YYYYMMDD:
|
||||
|
@ -1101,7 +1103,7 @@ B<seq 1 30 | parallel date -d '"today -{} days"' +%Y%m%d>
|
|||
Based on this we can let GNU B<parallel> generate 10 B<wget>s per day:
|
||||
|
||||
I<the above> B<| parallel -I {o} seq -w 1 10 "|" parallel wget
|
||||
http://www.website.com/path/to/{o}_{}.jpg>
|
||||
http://www.example.com/path/to/{o}_{}.jpg>
|
||||
|
||||
=head1 EXAMPLE: Rewriting a for-loop and a while-loop
|
||||
|
||||
|
@ -1124,7 +1126,7 @@ B<cat list | parallel do_something | process_output>
|
|||
If the processing requires more steps the for-loop like this:
|
||||
|
||||
(for x in `cat list` ; do
|
||||
no_extension=${x%.png};
|
||||
no_extension=${x%.*};
|
||||
do_something $x scale $no_extension.jpg
|
||||
do_step2 <$x $no_extension
|
||||
done) | process_output
|
||||
|
@ -1132,7 +1134,7 @@ If the processing requires more steps the for-loop like this:
|
|||
and while-loops like this:
|
||||
|
||||
cat list | (while read x ; do
|
||||
no_extension=${x%.png};
|
||||
no_extension=${x%.*};
|
||||
do_something $x scale $no_extension.jpg
|
||||
do_step2 <$x $no_extension
|
||||
done) | process_output
|
||||
|
@ -2547,7 +2549,7 @@ sub get_options_from_array {
|
|||
sub parse_options {
|
||||
# Returns: N/A
|
||||
# Defaults:
|
||||
$Global::version = 201011002;
|
||||
$Global::version = 201011133;
|
||||
$Global::progname = 'parallel';
|
||||
$Global::debug = 0;
|
||||
$Global::verbose = 0;
|
||||
|
@ -2732,23 +2734,21 @@ sub read_options {
|
|||
if(defined $ARGV[0] and ($ARGV[0]=~/^-Y/ or $ARGV[0]=~/^--shebang / or
|
||||
$ARGV[0]=~/^--hashbang /)) {
|
||||
# Program is called from #! line in script
|
||||
$ARGV[0]=~s/^-Y //; # remove -Y if on its own
|
||||
$ARGV[0]=~s/^-Y( |$)//; # remove -Y if on its own
|
||||
$ARGV[0]=~s/^-Y/-/; # remove -Y if bundled with other options
|
||||
$ARGV[0]=~s/^--shebang //; # remove --shebang if it is set
|
||||
$ARGV[0]=~s/^--hashbang //; # remove --hashbang if it is set
|
||||
$ARGV[0]=~s/^--shebang *//; # remove --shebang if it is set
|
||||
$ARGV[0]=~s/^--hashbang *//; # remove --hashbang if it is set
|
||||
my $argfile = pop @ARGV;
|
||||
# exec myself to split @ARGV into separate fields
|
||||
# exec myself to split $ARGV[0] into separate fields
|
||||
exec "$0 --skip-first-line -a $argfile @ARGV";
|
||||
}
|
||||
|
||||
Getopt::Long::Configure ("bundling","require_order");
|
||||
# First check if there is a --profile to set $::opt_profile
|
||||
my @ARGV_copy = @ARGV;
|
||||
get_options_from_array (\@ARGV_copy) || die_usage();
|
||||
Getopt::Long::Configure("bundling","pass_through");
|
||||
# Check if there is a --profile to set $::opt_profile
|
||||
GetOptions("profile|J=s" => \$::opt_profile) || die_usage();
|
||||
# Add options from .parallel/config and other profiles
|
||||
my @ARGV_profile = ();
|
||||
my @ARGV_env = ();
|
||||
|
||||
my @config_profiles = ($ENV{'HOME'}."/.parallel/config",
|
||||
$ENV{'HOME'}."/.parallelrc");
|
||||
my @profiles = @config_profiles;
|
||||
|
@ -2774,6 +2774,7 @@ sub read_options {
|
|||
}
|
||||
}
|
||||
}
|
||||
Getopt::Long::Configure("bundling","require_order");
|
||||
get_options_from_array(\@ARGV_profile) || die_usage();
|
||||
# Add options from shell variable $PARALLEL
|
||||
$ENV{'PARALLEL'} and @ARGV_env = shell_unquote(split/(?<![\\])\s/, $ENV{'PARALLEL'});
|
||||
|
@ -3812,7 +3813,7 @@ sub drain_job_queue {
|
|||
}
|
||||
my $last_header="";
|
||||
while($Global::total_running > 0) {
|
||||
debug("jobs running: $Global::total_running Memory usage:".my_memory_usage()."\n");
|
||||
debug("jobs running: ",$Global::total_running," Memory usage:".my_memory_usage()."\n");
|
||||
sleep 1;
|
||||
reaper(); # Some systems fail to catch the SIGCHLD
|
||||
if($::opt_progress) {
|
||||
|
@ -4949,7 +4950,7 @@ sub my_memory_usage {
|
|||
|
||||
my @procinfo = split(/\s+/,$data);
|
||||
|
||||
return $procinfo[22];
|
||||
return undef_as_zero($procinfo[22]);
|
||||
} else {
|
||||
return 0;
|
||||
}
|
||||
|
|
2
src/sql
2
src/sql
|
@ -528,7 +528,7 @@ $Global::Initfile && unlink $Global::Initfile;
|
|||
exit ($err);
|
||||
|
||||
sub parse_options {
|
||||
$Global::version = 20100922;
|
||||
$Global::version = 20101113;
|
||||
$Global::progname = 'sql';
|
||||
|
||||
# This must be done first as this may exec myself
|
||||
|
|
|
@ -156,6 +156,13 @@ echo line 1Nline 2Nline 3 | parallel -k --delimiter N echo This is
|
|||
printf "delimiter NUL line 1\0line 2\0line 3" | parallel -k -d '\0' echo
|
||||
printf "delimiter TAB line 1\tline 2\tline 3" | parallel -k --delimiter '\t' echo
|
||||
|
||||
echo '### Hans found a bug giving unitialized variable'
|
||||
echo >/tmp/parallel_f1
|
||||
echo >/tmp/parallel_f2'
|
||||
'
|
||||
echo /tmp/parallel_f1 /tmp/parallel_f2 | stdout parallel -kv --delimiter ' ' gzip
|
||||
rm /tmp/parallel_f*
|
||||
|
||||
echo '### Test --max-chars and -s: Max number of chars in a line'
|
||||
(echo line 1;echo line 1;echo line 2) | parallel -k --max-chars 25 -X echo
|
||||
(echo line 1;echo line 1;echo line 2) | parallel -k -s 25 -X echo
|
||||
|
|
|
@ -3,15 +3,22 @@
|
|||
SERVER1=parallel-server3
|
||||
SERVER2=parallel-server2
|
||||
|
||||
echo '### Test $PARALLEL'
|
||||
echo '### Test $PARALLEL - single line'
|
||||
echo | PARALLEL=--number-of-cpus parallel
|
||||
seq 1 2 | PARALLEL="-S$SERVER1 -Sssh\ -l\ parallel\ $SERVER2 -j1" parallel -kvv echo
|
||||
|
||||
echo '### Test $PARALLEL - multi line'
|
||||
seq 1 2 | PARALLEL="-S$SERVER1
|
||||
-Sssh -l parallel $SERVER2
|
||||
-Sssh\ -l\ parallel\ $SERVER2
|
||||
-j1" parallel -kvv echo
|
||||
|
||||
echo '### Test ~/.parallel/config'
|
||||
echo '### Test ~/.parallel/config - single line'
|
||||
echo "-S$SERVER1 -Sssh\ -l\ parallel\ $SERVER2 -j1" > ~/.parallel/config
|
||||
seq 1 2 | parallel -kvv echo
|
||||
|
||||
echo '### Test ~/.parallel/config - multi line'
|
||||
echo "-S$SERVER1
|
||||
-Sssh -l parallel $SERVER2
|
||||
-Sssh\ -l\ parallel\ $SERVER2
|
||||
-j1" > ~/.parallel/config
|
||||
seq 1 2 | parallel -kvv echo
|
||||
rm ~/.parallel/config
|
||||
|
|
|
@ -62,4 +62,4 @@ echo '### Test of --trim n'
|
|||
parallel -k -C %+ echo '"{1}_{3}_{2}_{4}"' ::: 'a% c %%b' 'a%c% b %d'
|
||||
|
||||
echo '### Test of bug: If input is empty string'
|
||||
(echo ; echo abcbdbebf;echo abc) | parallel --colsep b -v echo {1}{2}
|
||||
(echo ; echo abcbdbebf;echo abc) | parallel -k --colsep b -v echo {1}{2}
|
||||
|
|
|
@ -5,8 +5,8 @@ stdout parallel -j no_such_file echo ::: 1
|
|||
|
||||
echo '### Test of -j filename'
|
||||
echo 3 >/tmp/jobs_to_run
|
||||
parallel -j /tmp/jobs_to_run -v sleep 0.{} ::: 9 8 7 6 5
|
||||
# Should give 7 8 9 5 6
|
||||
parallel -j /tmp/jobs_to_run -v sleep 0.{} ::: 9 8 7 6 4
|
||||
# Should give 7 8 9 4 6
|
||||
|
||||
echo '### Test of -j filename with file content changing'
|
||||
(echo 1 >/tmp/jobs_to_run; sleep 3; echo 10 >/tmp/jobs_to_run) &
|
||||
|
|
|
@ -10,7 +10,7 @@ echo '### Test $PARALLEL_SEQ - remote'
|
|||
seq 1 20 | parallel -kN2 -S $SERVER1,parallel@$SERVER2 echo arg1:{1} seq:'$'PARALLEL_SEQ arg2:{2}
|
||||
|
||||
echo '### Test $PARALLEL_PID - local'
|
||||
seq 1 20 | parallel -kN2 echo arg1:{1} seq:'$'PARALLEL_PID arg2:{2} | perl -pe 's/\d/0/g'
|
||||
seq 1 20 | parallel -kN2 echo arg1:{1} pid:'$'PARALLEL_PID arg2:{2} | perl -pe 's/\d{3,}/0/g'
|
||||
|
||||
echo '### Test $PARALLEL_PID - remote'
|
||||
seq 1 20 | parallel -kN2 -S $SERVER1,parallel@$SERVER2 echo arg1:{1} seq:'$'PARALLEL_PID arg2:{2} | perl -pe 's/\d/0/g'
|
||||
seq 1 20 | parallel -kN2 -S $SERVER1,parallel@$SERVER2 echo arg1:{1} pid:'$'PARALLEL_PID arg2:{2} | perl -pe 's/\d{3,}/0/g'
|
||||
|
|
|
@ -1,5 +1,8 @@
|
|||
#!/bin/bash
|
||||
|
||||
SERVER1=parallel-server3
|
||||
SERVER2=parallel-server2
|
||||
|
||||
echo '### Test $PARALLEL'
|
||||
PARALLEL="-k
|
||||
-j1
|
||||
|
@ -24,40 +27,40 @@ PARALLEL="-k --jobs 1 echo 1" parallel -v echo 2 ::: a b c
|
|||
|
||||
echo '### Test ugly quoting from $PARALLEL'
|
||||
PARALLEL="-k --jobs 1 perl -pe '\$a=1; print\$a'" parallel -v ::: <(echo a) <(echo b)
|
||||
PARALLEL='-k --jobs 1 -S newton perl -pe "\\$a=1; print\\$a"' parallel -v ::: /etc/passwd
|
||||
PARALLEL='-k --jobs 1 -S '$SERVER1' perl -pe "\\$a=1; print\\$a"' parallel -v ::: /bin/gunzip
|
||||
|
||||
echo '### Test ugly quoting from profile file'
|
||||
cat <<EOF >/tmp/parallel_profile
|
||||
cat <<EOF >~/.parallel/test_profile
|
||||
-k --jobs 1 perl -pe '\$a=1; print \$a'
|
||||
EOF
|
||||
parallel -v -J /tmp/parallel_profile ::: <(echo a) <(echo b)
|
||||
parallel -v -J test_profile ::: <(echo a) <(echo b)
|
||||
|
||||
PARALLEL='-k --jobs 1 echo' parallel -S ssh\ newton\ ssh\ maxwell -v ::: /etc/passwd
|
||||
PARALLEL='-k --jobs 1 perl -pe "\\$a=1; print \\$a"' parallel -S ssh\ newton\ ssh\ maxwell -vv ::: /etc/passwd
|
||||
PARALLEL='-k --jobs 1 echo' parallel -S ssh\ $SERVER1\ ssh\ parallel@$SERVER2 -v ::: /bin/gunzip
|
||||
PARALLEL='-k --jobs 1 perl -pe "\\$a=1; print \\$a"' parallel -S ssh\ $SERVER1\ ssh\ parallel@$SERVER2 -vv ::: /bin/gunzip
|
||||
|
||||
echo '### Test quoting of $ in command from profile file'
|
||||
cat <<EOF >/tmp/parallel_profile
|
||||
cat <<EOF >~/.parallel/test_profile
|
||||
-k --jobs 1 perl -pe '\\\$a=1; print \\\$a'
|
||||
EOF
|
||||
parallel -v -J /tmp/parallel_profile -S ssh\ newton\ ssh\ maxwell ::: /etc/passwd
|
||||
parallel -v -J test_profile -S ssh\ $SERVER1\ ssh\ parallel@$SERVER2 ::: /bin/gunzip
|
||||
|
||||
echo '### Test quoting of $ in command from $PARALLEL'
|
||||
PARALLEL='-k --jobs 1 perl -pe "\\$a=1; print \\$a" ' parallel -S ssh\ newton\ ssh\ maxwell -v ::: /etc/passwd
|
||||
PARALLEL='-k --jobs 1 perl -pe "\\$a=1; print \\$a" ' parallel -S ssh\ $SERVER1\ ssh\ parallel@$SERVER2 -v ::: /bin/gunzip
|
||||
|
||||
echo '### Test quoting of space in arguments (-S) from profile file'
|
||||
cat <<EOF >/tmp/parallel_profile
|
||||
-k --jobs 1 -S ssh\ newton\ ssh\ maxwell perl -pe '\$a=1; print \$a'
|
||||
cat <<EOF >~/.parallel/test_profile
|
||||
-k --jobs 1 -S ssh\ $SERVER1\ ssh\ parallel@$SERVER2 perl -pe '\$a=1; print \$a'
|
||||
EOF
|
||||
parallel -v -J /tmp/parallel_profile ::: /etc/passwd
|
||||
parallel -v -J test_profile ::: /bin/gunzip
|
||||
|
||||
echo '### Test quoting of space in arguments (-S) from $PARALLEL'
|
||||
PARALLEL='-k --jobs 1 -S ssh\ newton\ ssh\ maxwell perl -pe "\\$a=1; print \\$a" ' parallel -v ::: /etc/passwd
|
||||
PARALLEL='-k --jobs 1 -S ssh\ '$SERVER1'\ ssh\ parallel@'$SERVER2' perl -pe "\\$a=1; print \\$a" ' parallel -v ::: /bin/gunzip
|
||||
|
||||
echo '### Test quoting of space in long arguments (--sshlogin) from profile file'
|
||||
cat <<EOF >/tmp/parallel_profile
|
||||
-k --jobs 1 --sshlogin ssh\ newton\ ssh\ maxwell perl -pe '\$a=1; print \$a'
|
||||
cat <<EOF >~/.parallel/test_profile
|
||||
-k --jobs 1 --sshlogin ssh\ $SERVER1\ ssh\ parallel@$SERVER2 perl -pe '\$a=1; print \$a'
|
||||
EOF
|
||||
parallel -v -J /tmp/parallel_profile ::: /etc/passwd
|
||||
parallel -v -J test_profile ::: /bin/gunzip
|
||||
|
||||
echo '### Test quoting of space in arguments (-S) from $PARALLEL'
|
||||
PARALLEL='-k --jobs 1 --sshlogin ssh\ newton\ ssh\ maxwell perl -pe "\\$a=1; print \\$a" ' parallel -v ::: /etc/passwd
|
||||
PARALLEL='-k --jobs 1 --sshlogin ssh\ '$SERVER1'\ ssh\ parallel@'$SERVER2' perl -pe "\\$a=1; print \\$a" ' parallel -v ::: /bin/gunzip
|
||||
|
|
|
@ -266,6 +266,10 @@ line 3
|
|||
delimiter TAB line 1
|
||||
line 2
|
||||
line 3
|
||||
### Hans found a bug giving unitialized variable
|
||||
gzip /tmp/parallel_f1
|
||||
gzip /tmp/parallel_f2'
|
||||
'
|
||||
### Test --max-chars and -s: Max number of chars in a line
|
||||
line 1 line 1
|
||||
line 2
|
||||
|
|
|
@ -1,10 +1,20 @@
|
|||
### Test $PARALLEL
|
||||
### Test $PARALLEL - single line
|
||||
1
|
||||
ssh -l parallel parallel-server2 PARALLEL_SEQ=$PARALLEL_SEQ\;export PARALLEL_SEQ\;PARALLEL_PID=$PARALLEL_PID\;export PARALLEL_PID\; echo\ 1;
|
||||
1
|
||||
ssh parallel-server3 PARALLEL_SEQ=$PARALLEL_SEQ\;export PARALLEL_SEQ\;PARALLEL_PID=$PARALLEL_PID\;export PARALLEL_PID\; echo\ 2;
|
||||
2
|
||||
### Test ~/.parallel/config
|
||||
### Test $PARALLEL - multi line
|
||||
ssh -l parallel parallel-server2 PARALLEL_SEQ=$PARALLEL_SEQ\;export PARALLEL_SEQ\;PARALLEL_PID=$PARALLEL_PID\;export PARALLEL_PID\; echo\ 1;
|
||||
1
|
||||
ssh parallel-server3 PARALLEL_SEQ=$PARALLEL_SEQ\;export PARALLEL_SEQ\;PARALLEL_PID=$PARALLEL_PID\;export PARALLEL_PID\; echo\ 2;
|
||||
2
|
||||
### Test ~/.parallel/config - single line
|
||||
ssh -l parallel parallel-server2 PARALLEL_SEQ=$PARALLEL_SEQ\;export PARALLEL_SEQ\;PARALLEL_PID=$PARALLEL_PID\;export PARALLEL_PID\; echo\ 1;
|
||||
1
|
||||
ssh parallel-server3 PARALLEL_SEQ=$PARALLEL_SEQ\;export PARALLEL_SEQ\;PARALLEL_PID=$PARALLEL_PID\;export PARALLEL_PID\; echo\ 2;
|
||||
2
|
||||
### Test ~/.parallel/config - multi line
|
||||
ssh -l parallel parallel-server2 PARALLEL_SEQ=$PARALLEL_SEQ\;export PARALLEL_SEQ\;PARALLEL_PID=$PARALLEL_PID\;export PARALLEL_PID\; echo\ 1;
|
||||
1
|
||||
ssh parallel-server3 PARALLEL_SEQ=$PARALLEL_SEQ\;export PARALLEL_SEQ\;PARALLEL_PID=$PARALLEL_PID\;export PARALLEL_PID\; echo\ 2;
|
||||
|
|
|
@ -10,7 +10,7 @@ See 'man parallel' for the options
|
|||
sleep 0.7
|
||||
sleep 0.8
|
||||
sleep 0.9
|
||||
sleep 0.5
|
||||
sleep 0.4
|
||||
sleep 0.6
|
||||
### Test of -j filename with file content changing
|
||||
sleep 3.3
|
||||
|
|
|
@ -21,24 +21,24 @@ arg1:15 seq:8 arg2:16
|
|||
arg1:17 seq:9 arg2:18
|
||||
arg1:19 seq:10 arg2:20
|
||||
### Test $PARALLEL_PID - local
|
||||
arg0:0 seq:00000 arg0:0
|
||||
arg0:0 seq:00000 arg0:0
|
||||
arg0:0 seq:00000 arg0:0
|
||||
arg0:0 seq:00000 arg0:0
|
||||
arg0:0 seq:00000 arg0:00
|
||||
arg0:00 seq:00000 arg0:00
|
||||
arg0:00 seq:00000 arg0:00
|
||||
arg0:00 seq:00000 arg0:00
|
||||
arg0:00 seq:00000 arg0:00
|
||||
arg0:00 seq:00000 arg0:00
|
||||
arg1:1 pid:0 arg2:2
|
||||
arg1:3 pid:0 arg2:4
|
||||
arg1:5 pid:0 arg2:6
|
||||
arg1:7 pid:0 arg2:8
|
||||
arg1:9 pid:0 arg2:10
|
||||
arg1:11 pid:0 arg2:12
|
||||
arg1:13 pid:0 arg2:14
|
||||
arg1:15 pid:0 arg2:16
|
||||
arg1:17 pid:0 arg2:18
|
||||
arg1:19 pid:0 arg2:20
|
||||
### Test $PARALLEL_PID - remote
|
||||
arg0:0 seq:00000 arg0:0
|
||||
arg0:0 seq:00000 arg0:0
|
||||
arg0:0 seq:00000 arg0:0
|
||||
arg0:0 seq:00000 arg0:0
|
||||
arg0:0 seq:00000 arg0:00
|
||||
arg0:00 seq:00000 arg0:00
|
||||
arg0:00 seq:00000 arg0:00
|
||||
arg0:00 seq:00000 arg0:00
|
||||
arg0:00 seq:00000 arg0:00
|
||||
arg0:00 seq:00000 arg0:00
|
||||
arg1:1 pid:0 arg2:2
|
||||
arg1:3 pid:0 arg2:4
|
||||
arg1:5 pid:0 arg2:6
|
||||
arg1:7 pid:0 arg2:8
|
||||
arg1:9 pid:0 arg2:10
|
||||
arg1:11 pid:0 arg2:12
|
||||
arg1:13 pid:0 arg2:14
|
||||
arg1:15 pid:0 arg2:16
|
||||
arg1:17 pid:0 arg2:18
|
||||
arg1:19 pid:0 arg2:20
|
||||
|
|
75
testsuite/wanted-results/test37
Normal file
75
testsuite/wanted-results/test37
Normal file
|
@ -0,0 +1,75 @@
|
|||
### Test $PARALLEL
|
||||
a
|
||||
b
|
||||
c
|
||||
a
|
||||
b
|
||||
c
|
||||
a
|
||||
b
|
||||
c
|
||||
echo 1 echo 2 a
|
||||
1 echo 2 a
|
||||
echo 1 echo 2 b
|
||||
1 echo 2 b
|
||||
echo 1 echo 2 c
|
||||
1 echo 2 c
|
||||
a
|
||||
b
|
||||
c
|
||||
echo 1 echo 2 a
|
||||
1 echo 2 a
|
||||
echo 1 echo 2 b
|
||||
1 echo 2 b
|
||||
echo 1 echo 2 c
|
||||
1 echo 2 c
|
||||
### Test ugly quoting from $PARALLEL
|
||||
perl -pe '$a=1; print$a' /dev/fd/63
|
||||
1a
|
||||
perl -pe '$a=1; print$a' /dev/fd/62
|
||||
1b
|
||||
perl -pe "\$a=1; print\$a" /bin/gunzip
|
||||
1#!/bin/bash
|
||||
1PATH=${GZIP_BINDIR-'/bin'}:$PATH
|
||||
1exec gzip -d "$@"
|
||||
### Test ugly quoting from profile file
|
||||
perl -pe '$a=1; print $a' /dev/fd/63
|
||||
1a
|
||||
perl -pe '$a=1; print $a' /dev/fd/62
|
||||
1b
|
||||
echo /bin/gunzip
|
||||
/bin/gunzip
|
||||
ssh parallel-server3 ssh parallel@parallel-server2 PARALLEL_SEQ=$PARALLEL_SEQ\;export PARALLEL_SEQ\;PARALLEL_PID=$PARALLEL_PID\;export PARALLEL_PID\; perl\ -pe\ \"\\\$a=1\;\ print\ \\\$a\"\ /bin/gunzip;
|
||||
1#!/bin/bash
|
||||
1PATH=${GZIP_BINDIR-'/bin'}:$PATH
|
||||
1exec gzip -d "$@"
|
||||
### Test quoting of $ in command from profile file
|
||||
perl -pe '$a=1; print $a' /bin/gunzip
|
||||
1#!/bin/bash
|
||||
1PATH=${GZIP_BINDIR-'/bin'}:$PATH
|
||||
1exec gzip -d "$@"
|
||||
### Test quoting of $ in command from $PARALLEL
|
||||
perl -pe "\$a=1; print \$a" /bin/gunzip
|
||||
1#!/bin/bash
|
||||
1PATH=${GZIP_BINDIR-'/bin'}:$PATH
|
||||
1exec gzip -d "$@"
|
||||
### Test quoting of space in arguments (-S) from profile file
|
||||
perl -pe '$a=1; print $a' /bin/gunzip
|
||||
1#!/bin/bash
|
||||
1PATH=${GZIP_BINDIR-'/bin'}:$PATH
|
||||
1exec gzip -d "$@"
|
||||
### Test quoting of space in arguments (-S) from $PARALLEL
|
||||
perl -pe "\$a=1; print \$a" /bin/gunzip
|
||||
1#!/bin/bash
|
||||
1PATH=${GZIP_BINDIR-'/bin'}:$PATH
|
||||
1exec gzip -d "$@"
|
||||
### Test quoting of space in long arguments (--sshlogin) from profile file
|
||||
perl -pe '$a=1; print $a' /bin/gunzip
|
||||
1#!/bin/bash
|
||||
1PATH=${GZIP_BINDIR-'/bin'}:$PATH
|
||||
1exec gzip -d "$@"
|
||||
### Test quoting of space in arguments (-S) from $PARALLEL
|
||||
perl -pe "\$a=1; print \$a" /bin/gunzip
|
||||
1#!/bin/bash
|
||||
1PATH=${GZIP_BINDIR-'/bin'}:$PATH
|
||||
1exec gzip -d "$@"
|
Loading…
Reference in a new issue