mirror of
https://git.savannah.gnu.org/git/parallel.git
synced 2024-11-25 07:27:55 +00:00
testsuite: Made the tests more portable.
This commit is contained in:
parent
0b8e949cbb
commit
dce32425eb
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 http://ftpmirror.gnu.org/parallel/parallel-20170522.tar.bz2
|
wget http://ftpmirror.gnu.org/parallel/parallel-20170622.tar.bz2
|
||||||
bzip2 -dc parallel-20170522.tar.bz2 | tar xvf -
|
bzip2 -dc parallel-20170622.tar.bz2 | tar xvf -
|
||||||
cd parallel-20170522
|
cd parallel-20170622
|
||||||
./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 http://ftpmirror.gnu.org/parallel/parallel-20170522.tar.bz2
|
wget http://ftpmirror.gnu.org/parallel/parallel-20170622.tar.bz2
|
||||||
bzip2 -dc parallel-20170522.tar.bz2 | tar xvf -
|
bzip2 -dc parallel-20170622.tar.bz2 | tar xvf -
|
||||||
cd parallel-20170522
|
cd parallel-20170622
|
||||||
./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
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
AC_INIT([parallel], [20170522], [bug-parallel@gnu.org])
|
AC_INIT([parallel], [20170622], [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([
|
||||||
|
|
|
@ -24,7 +24,7 @@
|
||||||
use strict;
|
use strict;
|
||||||
use Getopt::Long;
|
use Getopt::Long;
|
||||||
$Global::progname="niceload";
|
$Global::progname="niceload";
|
||||||
$Global::version = 20170523;
|
$Global::version = 20170622;
|
||||||
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) {
|
||||||
|
|
|
@ -1376,7 +1376,7 @@ sub check_invalid_option_combinations {
|
||||||
|
|
||||||
sub init_globals {
|
sub init_globals {
|
||||||
# Defaults:
|
# Defaults:
|
||||||
$Global::version = 20170523;
|
$Global::version = 20170622;
|
||||||
$Global::progname = 'parallel';
|
$Global::progname = 'parallel';
|
||||||
$Global::infinity = 2**31;
|
$Global::infinity = 2**31;
|
||||||
$Global::debug = 0;
|
$Global::debug = 0;
|
||||||
|
@ -1804,7 +1804,7 @@ sub find_compression_program {
|
||||||
# 16-cores: pzstd lz4 pigz lzop lbzip2 pbzip2 plzip lzip lrz pxz gzip lzma xz bzip2
|
# 16-cores: pzstd lz4 pigz lzop lbzip2 pbzip2 plzip lzip lrz pxz gzip lzma xz bzip2
|
||||||
# 32-cores: pzstd lbzip2 pbzip2 zstd pigz lz4 lzop plzip lzip lrz gzip pxz lzma bzip2 xz clzip
|
# 32-cores: pzstd lbzip2 pbzip2 zstd pigz lz4 lzop plzip lzip lrz gzip pxz lzma bzip2 xz clzip
|
||||||
|
|
||||||
my @prg = qw(pzstd lbzip2 pbzip2 zstd pigz lz4 lzop plzip lzip lrz
|
my @prg = qw(pzstd lbzip2 pbzip2 zstd pigz lz4 lzop plzip pixz lzip lrz
|
||||||
gzip pxz lzma bzip2 xz clzip);
|
gzip pxz lzma bzip2 xz clzip);
|
||||||
for my $p (@prg) {
|
for my $p (@prg) {
|
||||||
if(which($p)) {
|
if(which($p)) {
|
||||||
|
|
|
@ -95,7 +95,7 @@ B<Zsh, Fish, Ksh, and Pdksh functions and aliases>: Use B<env_parallel>.
|
||||||
|
|
||||||
The command cannot contain the character \257 (macron: ¯).
|
The command cannot contain the character \257 (macron: ¯).
|
||||||
|
|
||||||
=item B<{}>
|
=item B<{}> (alpha testing)
|
||||||
|
|
||||||
Input line. This replacement string will be replaced by a full line
|
Input line. This replacement string will be replaced by a full line
|
||||||
read from the input source. The input source is normally stdin
|
read from the input source. The input source is normally stdin
|
||||||
|
@ -112,7 +112,7 @@ parsed by the shell. The exception is if the command starts with a
|
||||||
replacement string; then the string is not quoted.
|
replacement string; then the string is not quoted.
|
||||||
|
|
||||||
|
|
||||||
=item B<{.}>
|
=item B<{.}> (alpha testing)
|
||||||
|
|
||||||
Input line without extension. This replacement string will be replaced
|
Input line without extension. This replacement string will be replaced
|
||||||
by the input with the extension removed. If the input line contains
|
by the input with the extension removed. If the input line contains
|
||||||
|
@ -128,7 +128,7 @@ The replacement string B<{.}> can be changed with B<--er>.
|
||||||
To understand replacement strings see B<{}>.
|
To understand replacement strings see B<{}>.
|
||||||
|
|
||||||
|
|
||||||
=item B<{/}>
|
=item B<{/}> (alpha testing)
|
||||||
|
|
||||||
Basename of input line. This replacement string will be replaced by
|
Basename of input line. This replacement string will be replaced by
|
||||||
the input with the directory part removed.
|
the input with the directory part removed.
|
||||||
|
@ -139,7 +139,7 @@ B<--basenamereplace>.
|
||||||
To understand replacement strings see B<{}>.
|
To understand replacement strings see B<{}>.
|
||||||
|
|
||||||
|
|
||||||
=item B<{//}>
|
=item B<{//}> (alpha testing)
|
||||||
|
|
||||||
Dirname of input line. This replacement string will be replaced by the
|
Dirname of input line. This replacement string will be replaced by the
|
||||||
dir of the input line. See B<dirname>(1).
|
dir of the input line. See B<dirname>(1).
|
||||||
|
@ -150,7 +150,7 @@ B<--dirnamereplace>.
|
||||||
To understand replacement strings see B<{}>.
|
To understand replacement strings see B<{}>.
|
||||||
|
|
||||||
|
|
||||||
=item B<{/.}>
|
=item B<{/.}> (alpha testing)
|
||||||
|
|
||||||
Basename of input line without extension. This replacement string will
|
Basename of input line without extension. This replacement string will
|
||||||
be replaced by the input with the directory and extension part
|
be replaced by the input with the directory and extension part
|
||||||
|
@ -162,7 +162,7 @@ B<--basenameextensionreplace>.
|
||||||
To understand replacement strings see B<{}>.
|
To understand replacement strings see B<{}>.
|
||||||
|
|
||||||
|
|
||||||
=item B<{#}>
|
=item B<{#}> (alpha testing)
|
||||||
|
|
||||||
Sequence number of the job to run. This replacement string will be
|
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
|
replaced by the sequence number of the job being run. It contains the
|
||||||
|
@ -173,7 +173,7 @@ The replacement string B<{#}> can be changed with B<--seqreplace>.
|
||||||
To understand replacement strings see B<{}>.
|
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
|
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
|
slot number between 1 and number of jobs to run in parallel. There
|
||||||
|
@ -185,7 +185,7 @@ The replacement string B<{%}> can be changed with B<--slotreplace>.
|
||||||
To understand replacement strings see B<{}>.
|
To understand replacement strings see B<{}>.
|
||||||
|
|
||||||
|
|
||||||
=item B<{>I<n>B<}>
|
=item B<{>I<n>B<}> (alpha testing)
|
||||||
|
|
||||||
Argument from input source I<n> or the I<n>'th argument. This
|
Argument from input source I<n> or the I<n>'th argument. This
|
||||||
positional replacement string will be replaced by the input from input
|
positional replacement string will be replaced by the input from input
|
||||||
|
@ -196,7 +196,7 @@ I<n>'th last argument.
|
||||||
To understand replacement strings see B<{}>.
|
To understand replacement strings see B<{}>.
|
||||||
|
|
||||||
|
|
||||||
=item B<{>I<n>.B<}>
|
=item B<{>I<n>.B<}> (alpha testing)
|
||||||
|
|
||||||
Argument from input source I<n> or the I<n>'th argument without
|
Argument from input source I<n> or the I<n>'th argument without
|
||||||
extension. It is a combination of B<{>I<n>B<}> and B<{.}>.
|
extension. It is a combination of B<{>I<n>B<}> and B<{.}>.
|
||||||
|
@ -209,7 +209,7 @@ extension removed.
|
||||||
To understand positional replacement strings see B<{>I<n>B<}>.
|
To understand positional replacement strings see B<{>I<n>B<}>.
|
||||||
|
|
||||||
|
|
||||||
=item B<{>I<n>/B<}>
|
=item B<{>I<n>/B<}> (alpha testing)
|
||||||
|
|
||||||
Basename of argument from input source I<n> or the I<n>'th argument.
|
Basename of argument from input source I<n> or the I<n>'th argument.
|
||||||
It is a combination of B<{>I<n>B<}> and B<{/}>.
|
It is a combination of B<{>I<n>B<}> and B<{/}>.
|
||||||
|
@ -222,7 +222,7 @@ directory (if any) removed.
|
||||||
To understand positional replacement strings see B<{>I<n>B<}>.
|
To understand positional replacement strings see B<{>I<n>B<}>.
|
||||||
|
|
||||||
|
|
||||||
=item B<{>I<n>//B<}>
|
=item B<{>I<n>//B<}> (alpha testing)
|
||||||
|
|
||||||
Dirname of argument from input source I<n> or the I<n>'th argument.
|
Dirname of argument from input source I<n> or the I<n>'th argument.
|
||||||
It is a combination of B<{>I<n>B<}> and B<{//}>.
|
It is a combination of B<{>I<n>B<}> and B<{//}>.
|
||||||
|
@ -234,7 +234,7 @@ the I<n>'th argument (when used with B<-N>). See B<dirname>(1).
|
||||||
To understand positional replacement strings see B<{>I<n>B<}>.
|
To understand positional replacement strings see B<{>I<n>B<}>.
|
||||||
|
|
||||||
|
|
||||||
=item B<{>I<n>/.B<}>
|
=item B<{>I<n>/.B<}> (alpha testing)
|
||||||
|
|
||||||
Basename of argument from input source I<n> or the I<n>'th argument
|
Basename of argument from input source I<n> or the I<n>'th argument
|
||||||
without extension. It is a combination of B<{>I<n>B<}>, B<{/}>, and
|
without extension. It is a combination of B<{>I<n>B<}>, B<{/}>, and
|
||||||
|
@ -248,7 +248,7 @@ directory (if any) and extension removed.
|
||||||
To understand positional replacement strings see B<{>I<n>B<}>.
|
To understand positional replacement strings see B<{>I<n>B<}>.
|
||||||
|
|
||||||
|
|
||||||
=item B<{=>I<perl expression>B<=}>
|
=item B<{=>I<perl expression>B<=}> (alpha testing)
|
||||||
|
|
||||||
Replace with calculated I<perl expression>. B<$_> will contain the
|
Replace with calculated I<perl expression>. B<$_> will contain the
|
||||||
same as B<{}>. After evaluating I<perl expression> B<$_> will be used
|
same as B<{}>. After evaluating I<perl expression> B<$_> will be used
|
||||||
|
@ -294,7 +294,7 @@ Example:
|
||||||
See also: B<--rpl> B<--parens>
|
See also: B<--rpl> B<--parens>
|
||||||
|
|
||||||
|
|
||||||
=item B<{=>I<n> I<perl expression>B<=}>
|
=item B<{=>I<n> I<perl expression>B<=}> (alpha testing)
|
||||||
|
|
||||||
Positional equivalent to B<{=perl expression=}>. To understand
|
Positional equivalent to B<{=perl expression=}>. To understand
|
||||||
positional replacement strings see B<{>I<n>B<}>.
|
positional replacement strings see B<{>I<n>B<}>.
|
||||||
|
@ -1076,7 +1076,7 @@ Arguments will be recycled if one input source has more arguments than the other
|
||||||
See also B<--header>, B<:::+>, B<::::+>.
|
See also B<--header>, B<:::+>, B<::::+>.
|
||||||
|
|
||||||
|
|
||||||
=item B<--load> I<max-load> (beta testing)
|
=item B<--load> I<max-load> (alpha testing)
|
||||||
|
|
||||||
Do not start new jobs on a given computer unless the number of running
|
Do not start new jobs on a given computer unless the number of running
|
||||||
processes on the computer is less than I<max-load>. I<max-load> uses
|
processes on the computer is less than I<max-load>. I<max-load> uses
|
||||||
|
@ -1254,7 +1254,7 @@ control on the command line (used by GNU B<parallel> internally when
|
||||||
called with B<--sshlogin>).
|
called with B<--sshlogin>).
|
||||||
|
|
||||||
|
|
||||||
=item B<--plus>
|
=item B<--plus> (alpha testing)
|
||||||
|
|
||||||
Activate additional replacement strings: {+/} {+.} {+..} {+...} {..}
|
Activate additional replacement strings: {+/} {+.} {+..} {+...} {..}
|
||||||
{...} {/..} {/...} {##}. The idea being that '{+foo}' matches the opposite of
|
{...} {/..} {/...} {##}. The idea being that '{+foo}' matches the opposite of
|
||||||
|
@ -1767,7 +1767,7 @@ impossible to track which input block corresponds to which output.
|
||||||
B<--round-robin> implies B<--pipe>, except if B<--pipepart> is given.
|
B<--round-robin> implies B<--pipe>, except if B<--pipepart> is given.
|
||||||
|
|
||||||
|
|
||||||
=item B<--rpl> 'I<tag> I<perl expression>' (beta testing)
|
=item B<--rpl> 'I<tag> I<perl expression>' (alpha testing)
|
||||||
|
|
||||||
Use I<tag> as a replacement string for I<perl expression>. This makes
|
Use I<tag> as a replacement string for I<perl expression>. This makes
|
||||||
it possible to define your own replacement strings. GNU B<parallel>'s
|
it possible to define your own replacement strings. GNU B<parallel>'s
|
||||||
|
@ -3107,11 +3107,14 @@ printed as soon as possible you can use B<-u>.
|
||||||
Compare the output of:
|
Compare the output of:
|
||||||
|
|
||||||
parallel wget --limit-rate=100k \
|
parallel wget --limit-rate=100k \
|
||||||
https://ftpmirror.gnu.org/parallel/parallel-20{}0822.tar.bz2 ::: {12..16}
|
https://ftpmirror.gnu.org/parallel/parallel-20{}0822.tar.bz2 \
|
||||||
|
::: {12..16}
|
||||||
parallel --line-buffer wget --limit-rate=100k \
|
parallel --line-buffer wget --limit-rate=100k \
|
||||||
https://ftpmirror.gnu.org/parallel/parallel-20{}0822.tar.bz2 ::: {12..16}
|
https://ftpmirror.gnu.org/parallel/parallel-20{}0822.tar.bz2 \
|
||||||
|
::: {12..16}
|
||||||
parallel -u wget --limit-rate=100k \
|
parallel -u wget --limit-rate=100k \
|
||||||
https://ftpmirror.gnu.org/parallel/parallel-20{}0822.tar.bz2 ::: {12..16}
|
https://ftpmirror.gnu.org/parallel/parallel-20{}0822.tar.bz2 \
|
||||||
|
::: {12..16}
|
||||||
|
|
||||||
=head1 EXAMPLE: Tag output lines
|
=head1 EXAMPLE: Tag output lines
|
||||||
|
|
||||||
|
|
3
src/parset
Executable file
3
src/parset
Executable file
|
@ -0,0 +1,3 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
echo You need to: source `which env_parallel.bash`
|
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 = 20170523;
|
$Global::version = 20170622;
|
||||||
$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
|
||||||
|
|
|
@ -44,7 +44,7 @@ prereqlocal: installparallel
|
||||||
echo | pv -qL 10 || (echo pv is required for testsuite; /bin/false)
|
echo | pv -qL 10 || (echo pv is required for testsuite; /bin/false)
|
||||||
echo | script -c echo -q /dev/null || (echo script is required for testsuite; /bin/false)
|
echo | script -c echo -q /dev/null || (echo script is required for testsuite; /bin/false)
|
||||||
niceload true || (echo niceload is required for testsuite; /bin/false)
|
niceload true || (echo niceload is required for testsuite; /bin/false)
|
||||||
which burnP6 || (echo burnP6 is required for testsuite; /bin/false)
|
which cpuburn || (echo cpuburn is required for testsuite; /bin/false)
|
||||||
which timeout || (echo timeout is required for testsuite; /bin/false)
|
which timeout || (echo timeout is required for testsuite; /bin/false)
|
||||||
which autossh || (echo autossh is required for testsuite; /bin/false)
|
which autossh || (echo autossh is required for testsuite; /bin/false)
|
||||||
which lsh || (echo lsh is required for testsuite; /bin/false)
|
which lsh || (echo lsh is required for testsuite; /bin/false)
|
||||||
|
|
|
@ -2,28 +2,29 @@
|
||||||
|
|
||||||
mysqlrootpass=${mysqlrootpass:-b+Ydjq4ejT4E}
|
mysqlrootpass=${mysqlrootpass:-b+Ydjq4ejT4E}
|
||||||
|
|
||||||
# To configure zsh
|
# After first run, set this:
|
||||||
echo Configure zsh and exit
|
# export INSTALL=echo
|
||||||
zsh
|
INSTALL=${INSTALL:-"sudo aptitude -y install"}
|
||||||
|
|
||||||
INSTALL="echo sudo aptitude -y install"
|
|
||||||
|
|
||||||
# The testsuite depends on this:
|
# The testsuite depends on this:
|
||||||
|
test_pkgs="imagemagick expect autossh sshpass jq libpod-simple-perl pod2pdf gawk"
|
||||||
$INSTALL imagemagick expect autossh sshpass jq libpod-simple-perl pod2pdf
|
test_pkgs="$test_pkgs lua5.2 clisp php7.0-cli nodejs-legacy mono-csharp-shell"
|
||||||
$INSTALL lua5.2 clisp php7.0-cli nodejs-legacy mono-csharp-shell
|
|
||||||
|
|
||||||
# DEBIAN package
|
# DEBIAN package
|
||||||
$INSTALL dpkg-dev build-essential debhelper
|
packaging_pkgs="dpkg-dev build-essential debhelper"
|
||||||
# SHEBANG TOOLS
|
# SHEBANG TOOLS
|
||||||
$INSTALL gnuplot octave ruby r-base-core
|
shebang_pkgs="gnuplot octave ruby r-base-core"
|
||||||
# SQL TOOLS
|
# SQL TOOLS
|
||||||
$INSTALL libdbd-pg-perl libdbd-sqlite3-perl libdbd-csv-perl libdbd-mysql-perl rlwrap
|
sql_pkgs="libdbd-pg-perl libdbd-sqlite3-perl libdbd-csv-perl libdbd-mysql-perl rlwrap"
|
||||||
# Compression
|
# Compression
|
||||||
$INSTALL pxz pixz
|
compression_pkgs="zstd clzip liblz4-tool lzop pigz pixz pxz gzip plzip pbzip2 lzma xz-utils lzip bzip2 lbzip2 lrzip"
|
||||||
|
# Shells
|
||||||
|
shell_pkgs="ash csh dash fdclone fish fizsh ksh mksh posh rc rush sash tcsh yash zsh"
|
||||||
|
# Databases
|
||||||
|
database_pkgs="postgresql mysql-server sqlite"
|
||||||
|
$INSTALL $test_pkgs $packaging_pkgs $shebang_pkgs $sql_pkgs $compression_pkgs $shell_pkgs $database_pkgs
|
||||||
|
|
||||||
# DATABASES
|
# DATABASES
|
||||||
$INSTALL postgresql mysql-server sqlite
|
|
||||||
echo '# Create PostgreSQL'
|
echo '# Create PostgreSQL'
|
||||||
sudo su - postgres -c 'createdb '`whoami`
|
sudo su - postgres -c 'createdb '`whoami`
|
||||||
sudo su - postgres -c 'createuser '`whoami`
|
sudo su - postgres -c 'createuser '`whoami`
|
||||||
|
@ -35,8 +36,7 @@ sql mysql://root:"$mysqlrootpass"@/mysql "DROP DATABASE `whoami`;DROP USER '`who
|
||||||
sql mysql://root:"$mysqlrootpass"@/mysql "CREATE DATABASE `whoami`;CREATE USER '`whoami`'@'localhost' IDENTIFIED BY '`whoami`'; GRANT ALL ON `whoami`.* TO '`whoami`'@'localhost';"
|
sql mysql://root:"$mysqlrootpass"@/mysql "CREATE DATABASE `whoami`;CREATE USER '`whoami`'@'localhost' IDENTIFIED BY '`whoami`'; GRANT ALL ON `whoami`.* TO '`whoami`'@'localhost';"
|
||||||
|
|
||||||
# SHELLS
|
# SHELLS
|
||||||
$INSTALL ash csh dash fdclone fish fizsh ksh mksh pdksh posh rc rush sash tcsh yash zsh
|
touch ~/.zshrc
|
||||||
|
|
||||||
SSHPASS=`goodpasswd`
|
SSHPASS=`goodpasswd`
|
||||||
export SSHPASS
|
export SSHPASS
|
||||||
#shells="bash sh csh ash tcsh zsh ksh fish fizsh mksh pdksh posh rc sash yash nopathbash nopathcsh"
|
#shells="bash sh csh ash tcsh zsh ksh fish fizsh mksh pdksh posh rc sash yash nopathbash nopathcsh"
|
||||||
|
@ -48,13 +48,14 @@ create_shell_user() {
|
||||||
sudo adduser --disabled-password --gecos "$shell for parallel,,," $shell &&
|
sudo adduser --disabled-password --gecos "$shell for parallel,,," $shell &&
|
||||||
echo "$shell:$SSHPASS" | sudo chpasswd &&
|
echo "$shell:$SSHPASS" | sudo chpasswd &&
|
||||||
sshpass -e ssh-copy-id $shell@lo &&
|
sshpass -e ssh-copy-id $shell@lo &&
|
||||||
echo "ssh-keyscan" &&
|
echo Add server keys for lo and server &&
|
||||||
ssh $shell@lo 'ssh-keyscan -t rsa lo >> .ssh/known_hosts' &&
|
ssh $shell@lo 'ssh-keyscan -t rsa lo >> .ssh/known_hosts' &&
|
||||||
ssh $shell@lo 'ssh-keyscan -t rsa server >> .ssh/known_hosts' &&
|
ssh $shell@lo 'ssh-keyscan -t rsa server >> .ssh/known_hosts' &&
|
||||||
echo Do chsh -s $(which $shell || which ${shell#"nopath"}) $shell &&
|
echo Do chsh -s $(which $shell || which ${shell#"nopath"}) $shell &&
|
||||||
(echo $shell | grep parallel ||
|
(echo $shell | grep parallel ||
|
||||||
sudo chsh -s $(which $shell || which ${shell#"nopath"}) $shell) &&
|
sudo chsh -s $(which $shell || which ${shell#"nopath"}) $shell) &&
|
||||||
echo | ssh -t $shell@lo ssh-keygen &&
|
echo Do ssh-keygen &&
|
||||||
|
echo | ssh -t $shell@lo ssh-keygen -b 1024 &&
|
||||||
echo Do ssh $shell@lo 'cat .ssh/id_rsa.pub >> .ssh/authorized_keys' &&
|
echo Do ssh $shell@lo 'cat .ssh/id_rsa.pub >> .ssh/authorized_keys' &&
|
||||||
ssh $shell@lo 'cat .ssh/id_rsa.pub >> .ssh/authorized_keys' &&
|
ssh $shell@lo 'cat .ssh/id_rsa.pub >> .ssh/authorized_keys' &&
|
||||||
ssh $shell@lo cat .ssh/id_rsa.pub | ssh parallel@lo 'cat >> .ssh/authorized_keys' &&
|
ssh $shell@lo cat .ssh/id_rsa.pub | ssh parallel@lo 'cat >> .ssh/authorized_keys' &&
|
||||||
|
@ -63,15 +64,22 @@ create_shell_user() {
|
||||||
ssh $shell@lo env_parallel --install &&
|
ssh $shell@lo env_parallel --install &&
|
||||||
ssh $shell@lo 'mkdir .parallel; touch .parallel/will-cite' &&
|
ssh $shell@lo 'mkdir .parallel; touch .parallel/will-cite' &&
|
||||||
echo OK Created $shell &&
|
echo OK Created $shell &&
|
||||||
|
echo >&2 &&
|
||||||
|
echo OK Created $shell >&2 &&
|
||||||
echo
|
echo
|
||||||
}
|
}
|
||||||
export -f create_shell_user
|
export -f create_shell_user
|
||||||
. `which env_parallel.bash`
|
. `which env_parallel.bash`
|
||||||
shellsplus="parallel $shells"
|
shellsplus="parallel $shells"
|
||||||
parallel -u --timeout 15 --retries 2 --tag -j1 create_shell_user ::: $shellsplus
|
# Racecondition: if multiple adds a group it will the same group ID
|
||||||
# sh fails if not run by itself
|
parallel --timeout 15 --retries 5 --tag -j1 create_shell_user ::: $shellsplus
|
||||||
parallel -u --timeout 15 --retries 2 --tag -j1 create_shell_user ::: sh
|
|
||||||
parallel -j10 --tag ssh {}@lo ssh {}@lo echo {} OK ::: $shells
|
ssh_a_to_b() {
|
||||||
|
ssh $1@lo ssh $2@lo echo OK ||
|
||||||
|
echo failed && false
|
||||||
|
}
|
||||||
|
export -f ssh_a_to_b
|
||||||
|
parallel -j8 --timeout 5 --tag ssh_a_to_b {} {} ::: $shellsplus
|
||||||
|
|
||||||
ssh_copy_id() {
|
ssh_copy_id() {
|
||||||
from="$1"
|
from="$1"
|
||||||
|
@ -80,8 +88,10 @@ ssh_copy_id() {
|
||||||
}
|
}
|
||||||
export -f ssh_copy_id
|
export -f ssh_copy_id
|
||||||
|
|
||||||
parallel --bar -j10 --timeout 3 --retries 10 --tag ssh_copy_id {1}@lo {2}@lo ::: $shellsplus ::: $shellsplus
|
# copy id from any X to any Y
|
||||||
parallel -j10 --timeout 3 --retries 10 --tag ssh {1}@lo ssh {2}@lo echo OK ::: $shellsplus ::: $shellsplus
|
parallel -u --bar -j3 --timeout 3 --retries 10 --tag ssh_copy_id {1}@lo {2}@lo ::: $shellsplus ::: $shellsplus
|
||||||
|
# Test the copying went well
|
||||||
|
parallel -j3 --timeout 3 --retries 10 --tag ssh_a_to_b ::: $shellsplus ::: $shellsplus
|
||||||
|
|
||||||
# change paths to no path
|
# change paths to no path
|
||||||
(
|
(
|
||||||
|
@ -118,3 +128,7 @@ echo Add:
|
||||||
echo HostkeyAlgorithms +ssh-dss
|
echo HostkeyAlgorithms +ssh-dss
|
||||||
echo to .ssh/config if you get
|
echo to .ssh/config if you get
|
||||||
echo no matching host key type found. Their offer: ssh-dss
|
echo no matching host key type found. Their offer: ssh-dss
|
||||||
|
echo
|
||||||
|
echo Add to /etc/ssh/sshd_config
|
||||||
|
echo Ciphers aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes256-cbc,aes192-cbc,aes128-cbc,3des-cbc
|
||||||
|
echo KexAlgorithms diffie-hellman-group-exchange-sha256,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,curve25519-sha256@libssh.org,diffie-hellman-group1-sha1,diffie-hellman-group14-sha1,diffie-hellman-group-exchange-sha1
|
||||||
|
|
|
@ -32,7 +32,9 @@ echo '### -N and --noswap. Must give 0'
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
# force load > 10
|
# force load > 10
|
||||||
while uptime | egrep -v 'age:.[1-9][0-9]?[0-9].[0-9][0-9]' >/dev/null ; do (timeout 5 nice burnP6 2>/dev/null &) done
|
while uptime | grep -v age:.[1-9][0-9].[0-9][0-9] >/dev/null ; do
|
||||||
|
(timeout 5 nice perl -e 'while(1){}' 2>/dev/null &)
|
||||||
|
done
|
||||||
|
|
||||||
cat <<'EOF' | sed -e 's/;$/; /;s/$SERVER1/'$SERVER1'/;s/$SERVER2/'$SERVER2'/' | stdout parallel -vj0 --joblog /tmp/jl-`basename $0` -L1
|
cat <<'EOF' | sed -e 's/;$/; /;s/$SERVER1/'$SERVER1'/;s/$SERVER2/'$SERVER2'/' | stdout parallel -vj0 --joblog /tmp/jl-`basename $0` -L1
|
||||||
echo '### -H and --hard'
|
echo '### -H and --hard'
|
||||||
|
|
|
@ -5,7 +5,9 @@ niceload "perl -e 'exit(3)'" ; echo $? eq 3
|
||||||
niceload "perl -e 'exit(0)'" ; echo $? eq 0
|
niceload "perl -e 'exit(0)'" ; echo $? eq 0
|
||||||
|
|
||||||
# force load > 10
|
# force load > 10
|
||||||
while uptime | grep -v age:.[1-9][0-9].[0-9][0-9] >/dev/null ; do (timeout 5 nice burnP6 2>/dev/null &) done
|
while uptime | grep -v age:.[1-9][0-9].[0-9][0-9] >/dev/null ; do
|
||||||
|
(timeout 5 nice perl -e 'while(1){}' 2>/dev/null &)
|
||||||
|
done
|
||||||
|
|
||||||
echo '### Test -p'
|
echo '### Test -p'
|
||||||
perl -e '$|=1;while($t++<3){sleep(1);print "."}' &
|
perl -e '$|=1;while($t++<3){sleep(1);print "."}' &
|
||||||
|
|
|
@ -1,7 +1,9 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
# force load > 10
|
# force load > 10
|
||||||
while uptime | grep -v age:.[1-9]\\+[0-9].[0-9][0-9] >/dev/null ; do (timeout 5 nice burnP6 2>/dev/null &) done
|
while uptime | grep -v age:.[1-9]\\+[0-9].[0-9][0-9] >/dev/null ; do
|
||||||
|
(timeout 5 nice perl -e 'while(1){}' 2>/dev/null &)
|
||||||
|
done
|
||||||
|
|
||||||
int() {
|
int() {
|
||||||
perl -pe 's/(\d+\.\d*)/int($1)/e'
|
perl -pe 's/(\d+\.\d*)/int($1)/e'
|
||||||
|
|
|
@ -4,7 +4,9 @@ cp /bin/sleep /tmp/mysleep
|
||||||
killall -9 mysleep 2>/dev/null
|
killall -9 mysleep 2>/dev/null
|
||||||
|
|
||||||
# force load > 10
|
# force load > 10
|
||||||
while uptime | grep -v age:.[1-9][0-9].[0-9][0-9] >/dev/null ; do (timeout 5 nice burnP6 2>/dev/null &) done
|
while uptime | grep -v age:.[1-9][0-9].[0-9][0-9] >/dev/null ; do
|
||||||
|
(timeout 5 nice perl -e 'while(1){}' 2>/dev/null &)
|
||||||
|
done
|
||||||
|
|
||||||
sleep 2 &
|
sleep 2 &
|
||||||
export PID1=$!
|
export PID1=$!
|
||||||
|
|
|
@ -16,6 +16,9 @@ export SMALLDISK
|
||||||
sudo chmod 777 /mnt/ram
|
sudo chmod 777 /mnt/ram
|
||||||
) >/dev/null 2>/dev/null
|
) >/dev/null 2>/dev/null
|
||||||
|
|
||||||
|
# Clean tmp
|
||||||
|
find /tmp{/*,}/*.{par,tms,tmx} 2>/dev/null -mmin -10 | parallel rm
|
||||||
|
|
||||||
stdsort() {
|
stdsort() {
|
||||||
"$@" 2>&1 | sort;
|
"$@" 2>&1 | sort;
|
||||||
}
|
}
|
||||||
|
@ -118,17 +121,6 @@ echo '### bug #44614: --pipepart --header off by one'
|
||||||
echo '### PARALLEL_TMUX not found'
|
echo '### PARALLEL_TMUX not found'
|
||||||
PARALLEL_TMUX=not-existing parallel --tmux echo ::: 1
|
PARALLEL_TMUX=not-existing parallel --tmux echo ::: 1
|
||||||
|
|
||||||
echo '**'
|
|
||||||
|
|
||||||
parallel -j4 --halt 2 ::: 'sleep 1' burnP6 false;
|
|
||||||
killall burnP6 && echo ERROR: burnP6 should already have been killed
|
|
||||||
parallel -j4 --halt -2 ::: 'sleep 1' burnP5 true;
|
|
||||||
killall burnP5 && echo ERROR: burnP5 should already have been killed
|
|
||||||
|
|
||||||
parallel --halt error echo ::: should not print
|
|
||||||
parallel --halt soon echo ::: should not print
|
|
||||||
parallel --halt now echo ::: should not print
|
|
||||||
|
|
||||||
echo '**'
|
echo '**'
|
||||||
|
|
||||||
echo '### bug #44995: parallel echo {#} ::: 1 2 ::: 1 2'
|
echo '### bug #44995: parallel echo {#} ::: 1 2 ::: 1 2'
|
||||||
|
@ -689,20 +681,40 @@ par_link_files_as_only_arg() {
|
||||||
}
|
}
|
||||||
|
|
||||||
par_macron() {
|
par_macron() {
|
||||||
macron=$(perl -e 'print "\257"')
|
print_it() {
|
||||||
parallel ::: "echo $macron"
|
parallel ::: "echo $1"
|
||||||
parallel echo ::: "$macron"
|
parallel echo ::: "$1"
|
||||||
parallel echo "$macron" ::: $macron
|
parallel echo "$1" ::: "$1"
|
||||||
macron_a=$(perl -e 'print "\257\256"')
|
parallel echo \""$1"\" ::: "$1"
|
||||||
parallel ::: "echo $macron_a"
|
parallel -q echo ::: "$1"
|
||||||
parallel echo ::: "$macron_a"
|
parallel -q echo "$1" ::: "$1"
|
||||||
parallel echo "$macron_a" ::: $macron_a
|
parallel -q echo \""$1"\" ::: "$1"
|
||||||
a=$(perl -e 'print "\257<\257<\257>\257>"')
|
}
|
||||||
parallel ::: "echo \"$a\""
|
print_it "$(perl -e 'print "\257"')"
|
||||||
parallel echo ::: "$a"
|
print_it "$(perl -e 'print "\257\256"')"
|
||||||
parallel echo \"$a\" ::: $a
|
print_it "$(perl -e 'print "\257<\257<\257>\257>"')"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
par_basic_halt() {
|
||||||
|
cpuburn=$(tempfile)
|
||||||
|
cpuburn2=$(tempfile)
|
||||||
|
(echo '#!/usr/bin/perl'
|
||||||
|
echo "eval{setpriority(0,0,9)}; while(1){}") > $cpuburn
|
||||||
|
chmod 700 $cpuburn
|
||||||
|
cp -a $cpuburn $cpuburn2
|
||||||
|
|
||||||
|
parallel -j4 --halt 2 ::: 'sleep 1' $cpuburn false;
|
||||||
|
killall $(basename $cpuburn) 2>/dev/null &&
|
||||||
|
echo ERROR: cpuburn should already have been killed
|
||||||
|
parallel -j4 --halt -2 ::: 'sleep 1' $cpuburn2 true;
|
||||||
|
killall $(basename $cpuburn2) 2>/dev/null &&
|
||||||
|
echo ERROR: cpuburn2 should already have been killed
|
||||||
|
rm $cpuburn $cpuburn2
|
||||||
|
|
||||||
|
parallel --halt error echo ::: should not print
|
||||||
|
parallel --halt soon echo ::: should not print
|
||||||
|
parallel --halt now echo ::: should not print
|
||||||
|
}
|
||||||
|
|
||||||
export -f $(compgen -A function | grep par_)
|
export -f $(compgen -A function | grep par_)
|
||||||
compgen -A function | grep par_ | sort |
|
compgen -A function | grep par_ | sort |
|
||||||
|
|
|
@ -4,6 +4,55 @@
|
||||||
# Each should be taking 10-30s and be possible to run in parallel
|
# Each should be taking 10-30s and be possible to run in parallel
|
||||||
# I.e.: No race conditions, no logins
|
# I.e.: No race conditions, no logins
|
||||||
|
|
||||||
|
par__pipepart_spawn() {
|
||||||
|
echo '### bug #46214: Using --pipepart doesnt spawn multiple jobs in version 20150922'
|
||||||
|
seq 1000000 > /tmp/num1000000;
|
||||||
|
stdout nice parallel --pipepart --progress -a /tmp/num1000000 --block 10k -j0 true |
|
||||||
|
grep 1:local | perl -pe 's/\d\d\d/999/g'
|
||||||
|
}
|
||||||
|
|
||||||
|
par__pipe_tee() {
|
||||||
|
echo 'bug #45479: --pipe/--pipepart --tee'
|
||||||
|
echo '--pipe --tee'
|
||||||
|
|
||||||
|
random1G() {
|
||||||
|
< /dev/zero openssl enc -aes-128-ctr -K 1234 -iv 1234 2>/dev/null |
|
||||||
|
head -c 1G;
|
||||||
|
}
|
||||||
|
random1G | parallel --pipe --tee cat ::: {1..3} | LANG=C wc -c
|
||||||
|
}
|
||||||
|
|
||||||
|
par__pipepart_tee() {
|
||||||
|
echo 'bug #45479: --pipe/--pipepart --tee'
|
||||||
|
echo '--pipepart --tee'
|
||||||
|
|
||||||
|
random1G() {
|
||||||
|
< /dev/zero openssl enc -aes-128-ctr -K 1234 -iv 1234 2>/dev/null |
|
||||||
|
head -c 1G;
|
||||||
|
}
|
||||||
|
tmp=$(mktemp)
|
||||||
|
random1G >$tmp
|
||||||
|
parallel --pipepart --tee -a $tmp cat ::: {1..3} | LANG=C wc -c
|
||||||
|
rm $tmp
|
||||||
|
}
|
||||||
|
|
||||||
|
par__memleak() {
|
||||||
|
echo "### Test memory consumption stays (almost) the same for 30 and 300 jobs"
|
||||||
|
echo "should give 1 == true"
|
||||||
|
|
||||||
|
mem30=$( nice stdout time -f %M parallel -j2 true :::: <(perl -e '$a="x"x60000;for(1..30){print $a,"\n"}') );
|
||||||
|
mem300=$( nice stdout time -f %M parallel -j2 true :::: <(perl -e '$a="x"x60000;for(1..300){print $a,"\n"}') );
|
||||||
|
echo "Memory use should not depend very much on the total number of jobs run\n";
|
||||||
|
echo "Test if memory consumption(300 jobs) < memory consumption(30 jobs) * 110% ";
|
||||||
|
echo $(($mem300*100 < $mem30 * 110))
|
||||||
|
}
|
||||||
|
|
||||||
|
par_slow_total_jobs() {
|
||||||
|
echo 'bug #51006: Slow total_jobs() eats job'
|
||||||
|
(echo a; sleep 10; echo b; sleep 10; seq 2) |
|
||||||
|
parallel -k echo '{=total_jobs()=}'
|
||||||
|
}
|
||||||
|
|
||||||
par_interactive() {
|
par_interactive() {
|
||||||
echo '### Test -p --interactive'
|
echo '### Test -p --interactive'
|
||||||
cat >/tmp/parallel-script-for-expect <<_EOF
|
cat >/tmp/parallel-script-for-expect <<_EOF
|
||||||
|
@ -36,7 +85,9 @@ expect "opt--interactive 3"
|
||||||
send "\n"
|
send "\n"
|
||||||
_EOF
|
_EOF
|
||||||
echo
|
echo
|
||||||
) | perl -ne '/\S/ and print'
|
) | perl -ne 's/\r//g;/\S/ and print' |
|
||||||
|
# Race will cause the order to change
|
||||||
|
sort
|
||||||
}
|
}
|
||||||
|
|
||||||
par_k() {
|
par_k() {
|
||||||
|
@ -44,14 +95,7 @@ par_k() {
|
||||||
ulimit -n 50
|
ulimit -n 50
|
||||||
(echo "sleep 3; echo begin"; seq 1 30 |
|
(echo "sleep 3; echo begin"; seq 1 30 |
|
||||||
parallel -kq echo "sleep 1; echo {}";
|
parallel -kq echo "sleep 1; echo {}";
|
||||||
echo "echo end") | stdout parallel -k -j0
|
echo "echo end") | stdout nice parallel -k -j0
|
||||||
}
|
|
||||||
|
|
||||||
par_pipepart_spawn() {
|
|
||||||
echo '### bug #46214: Using --pipepart doesnt spawn multiple jobs in version 20150922'
|
|
||||||
seq 1000000 > /tmp/num1000000;
|
|
||||||
stdout parallel --pipepart --progress -a /tmp/num1000000 --block 10k -j0 true |
|
|
||||||
grep 1:local | perl -pe 's/\d\d\d/999/g'
|
|
||||||
}
|
}
|
||||||
|
|
||||||
par_halt_on_error() {
|
par_halt_on_error() {
|
||||||
|
@ -107,17 +151,6 @@ par_k_linebuffer() {
|
||||||
parallel --line-buffer -k 'echo stdout top;sleep 1;echo stderr in the middle >&2; sleep 1;echo stdout' ::: end 2>&1
|
parallel --line-buffer -k 'echo stdout top;sleep 1;echo stderr in the middle >&2; sleep 1;echo stdout' ::: end 2>&1
|
||||||
}
|
}
|
||||||
|
|
||||||
par_memleak() {
|
|
||||||
echo "### Test memory consumption stays (almost) the same for 30 and 300 jobs"
|
|
||||||
echo "should give 1 == true"
|
|
||||||
|
|
||||||
mem30=$( stdout time -f %M parallel -j2 true :::: <(perl -e '$a="x"x60000;for(1..30){print $a,"\n"}') );
|
|
||||||
mem300=$( stdout time -f %M parallel -j2 true :::: <(perl -e '$a="x"x60000;for(1..300){print $a,"\n"}') );
|
|
||||||
echo "Memory use should not depend very much on the total number of jobs run\n";
|
|
||||||
echo "Test if memory consumption(300 jobs) < memory consumption(30 jobs) * 110% ";
|
|
||||||
echo $(($mem300*100 < $mem30 * 110))
|
|
||||||
}
|
|
||||||
|
|
||||||
par_maxlinelen_m_I() {
|
par_maxlinelen_m_I() {
|
||||||
echo "### Test max line length -m -I"
|
echo "### Test max line length -m -I"
|
||||||
|
|
||||||
|
@ -146,20 +179,9 @@ par_compress_fail() {
|
||||||
seq 12 | parallel --compress -k seq {} 1000000 | md5sum
|
seq 12 | parallel --compress -k seq {} 1000000 | md5sum
|
||||||
}
|
}
|
||||||
|
|
||||||
par_distribute_input_by_ability() {
|
|
||||||
echo "### bug #48290: round-robin does not distribute data based on business"
|
|
||||||
echo "### Distribute input to jobs that are ready"
|
|
||||||
echo "Job-slot n is 50% slower than n+1, so the order should be 1..7"
|
|
||||||
seq 20000000 |
|
|
||||||
parallel --tagstring {#} -j7 --block 300k --round-robin --pipe \
|
|
||||||
'pv -qL{=$_=$job->seq()**3+9=}0000 |wc -c' |
|
|
||||||
sort -nk2 | field 1
|
|
||||||
}
|
|
||||||
|
|
||||||
par_round_robin_blocks() {
|
par_round_robin_blocks() {
|
||||||
echo "bug #49664: --round-robin does not complete"
|
echo "bug #49664: --round-robin does not complete"
|
||||||
|
seq 20000000 | parallel -j8 --block 10M --round-robin --pipe wc -c | wc -l
|
||||||
seq 20000000 | parallel --block 10M --round-robin --pipe wc -c | wc -l
|
|
||||||
}
|
}
|
||||||
|
|
||||||
par_results_csv() {
|
par_results_csv() {
|
||||||
|
@ -202,31 +224,6 @@ par_tmux_fg() {
|
||||||
stdout parallel --tmux --fg sleep ::: 3 | perl -pe 's/.tmp\S+/tmp/'
|
stdout parallel --tmux --fg sleep ::: 3 | perl -pe 's/.tmp\S+/tmp/'
|
||||||
}
|
}
|
||||||
|
|
||||||
par_pipe_tee() {
|
|
||||||
echo 'bug #45479: --pipe/--pipepart --tee'
|
|
||||||
echo '--pipe --tee'
|
|
||||||
|
|
||||||
random1G() {
|
|
||||||
< /dev/zero openssl enc -aes-128-ctr -K 1234 -iv 1234 2>/dev/null |
|
|
||||||
head -c 1G;
|
|
||||||
}
|
|
||||||
random1G | parallel --pipe --tee cat ::: {1..3} | LANG=C wc -c
|
|
||||||
}
|
|
||||||
|
|
||||||
par_pipepart_tee() {
|
|
||||||
echo 'bug #45479: --pipe/--pipepart --tee'
|
|
||||||
echo '--pipepart --tee'
|
|
||||||
|
|
||||||
random1G() {
|
|
||||||
< /dev/zero openssl enc -aes-128-ctr -K 1234 -iv 1234 2>/dev/null |
|
|
||||||
head -c 1G;
|
|
||||||
}
|
|
||||||
tmp=$(mktemp)
|
|
||||||
random1G >$tmp
|
|
||||||
parallel --pipepart --tee -a $tmp cat ::: {1..3} | LANG=C wc -c
|
|
||||||
rm $tmp
|
|
||||||
}
|
|
||||||
|
|
||||||
par_plus_dyn_repl() {
|
par_plus_dyn_repl() {
|
||||||
echo "Dynamic replacement strings defined by --plus"
|
echo "Dynamic replacement strings defined by --plus"
|
||||||
|
|
||||||
|
@ -307,12 +304,6 @@ par_plus_dyn_repl() {
|
||||||
parallel --plus echo '{-2,,A}' ::: "wrong" ::: "$myvar" ::: "wrong"
|
parallel --plus echo '{-2,,A}' ::: "wrong" ::: "$myvar" ::: "wrong"
|
||||||
}
|
}
|
||||||
|
|
||||||
par_slow_total_jobs() {
|
|
||||||
echo 'bug #51006: Slow total_jobs() eats job'
|
|
||||||
(echo a; sleep 7; echo b; sleep 7; seq 2) |
|
|
||||||
parallel -k echo '{=total_jobs()=}'
|
|
||||||
}
|
|
||||||
|
|
||||||
export -f $(compgen -A function | grep par_)
|
export -f $(compgen -A function | grep par_)
|
||||||
compgen -A function | grep par_ | sort |
|
compgen -A function | grep par_ | sort |
|
||||||
parallel --joblog /tmp/jl-`basename $0` -j10 --tag -k '{} 2>&1'
|
parallel --joblog /tmp/jl-`basename $0` -j10 --tag -k '{} 2>&1'
|
||||||
|
|
|
@ -232,15 +232,6 @@ line2"' 'echo "command2"'
|
||||||
echo "${var[0]}"
|
echo "${var[0]}"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
par_sqlworker_hostname() {
|
|
||||||
echo 'bug #50901: --sqlworker should use hostname in the joblog instead of :'
|
|
||||||
parallel --sqlmaster :my/hostname echo ::: 1 2 3
|
|
||||||
parallel -k --sqlworker :my/hostname
|
|
||||||
sql :my 'select host from hostname;'
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
export -f $(compgen -A function | grep par_)
|
export -f $(compgen -A function | grep par_)
|
||||||
compgen -A function | grep par_ | sort |
|
compgen -A function | grep par_ | sort |
|
||||||
parallel -j6 --tag -k --joblog +/tmp/jl-`basename $0` '{} 2>&1'
|
parallel -j6 --tag -k --joblog +/tmp/jl-`basename $0` '{} 2>&1'
|
||||||
|
|
|
@ -60,12 +60,17 @@ par_linebuffer_matters_compress_tag() {
|
||||||
# forcing the compress tool to spit out compressed blocks
|
# forcing the compress tool to spit out compressed blocks
|
||||||
head -c 10000000 /dev/urandom > $randomfile
|
head -c 10000000 /dev/urandom > $randomfile
|
||||||
|
|
||||||
parallel -j0 --compress --tag --delay 1 "shuf $randomfile; sleep 1; shuf $randomfile; true" ::: {0..9} |
|
testfunc() {
|
||||||
perl -ne '/^(\S+)\t/ and print "$1\n"' | uniq > $nolbfile &
|
linebuffer="$1"
|
||||||
parallel -j0 --compress --tag --delay 1 "shuf $randomfile; sleep 1; shuf $randomfile; true" ::: {0..9} |
|
# Sleep 2 sec to give time to linebuffer-print the first part
|
||||||
perl -ne '/^(\S+)\t/ and print "$1\n"' | uniq > $controlfile &
|
parallel -j0 $linebuffer --compress --tag \
|
||||||
parallel -j0 --line-buffer --compress --tag --delay 1 "shuf $randomfile; sleep 1; shuf $randomfile; true" ::: {0..9} |
|
"shuf $randomfile; sleep 2; shuf $randomfile; true" ::: {0..10} |
|
||||||
perl -ne '/^(\S+)\t/ and print "$1\n"' | uniq > $lbfile &
|
perl -ne '/^(\S+)\t/ and print "$1\n"' | uniq | sort
|
||||||
|
}
|
||||||
|
|
||||||
|
testfunc > $nolbfile &
|
||||||
|
testfunc > $controlfile &
|
||||||
|
testfunc --linebuffer > $lbfile &
|
||||||
wait
|
wait
|
||||||
|
|
||||||
nolb="$(cat $nolbfile)"
|
nolb="$(cat $nolbfile)"
|
||||||
|
|
|
@ -118,5 +118,14 @@ par_dryrun_timeout_ungroup() {
|
||||||
seq 1000 | stdout parallel --dry-run --timeout 100 -u --jobs 10 echo | wc
|
seq 1000 | stdout parallel --dry-run --timeout 100 -u --jobs 10 echo | wc
|
||||||
}
|
}
|
||||||
|
|
||||||
|
par_sqlworker_hostname() {
|
||||||
|
echo 'bug #50901: --sqlworker should use hostname in the joblog instead of :'
|
||||||
|
parallel --sqlmaster :my/hostname echo ::: 1 2 3
|
||||||
|
parallel -k --sqlworker :my/hostname
|
||||||
|
hostname=`hostname`
|
||||||
|
sql :my 'select host from hostname;' |
|
||||||
|
perl -pe "s/$hostname/<hostname>/g"
|
||||||
|
}
|
||||||
|
|
||||||
export -f $(compgen -A function | grep par_)
|
export -f $(compgen -A function | grep par_)
|
||||||
compgen -A function | grep par_ | sort | parallel -j6 --tag -k '{} 2>&1'
|
compgen -A function | grep par_ | sort | parallel -j6 --tag -k '{} 2>&1'
|
||||||
|
|
|
@ -1,5 +1,47 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
|
par_hostgroup() {
|
||||||
|
echo '### --hostgroup force ncpu'
|
||||||
|
parallel --delay 0.1 --hgrp -S @g1/1/parallel@lo -S @g2/3/lo whoami\;sleep 0.4{} ::: {1..8} | sort
|
||||||
|
|
||||||
|
echo '### --hostgroup two group arg'
|
||||||
|
parallel -k --sshdelay 0.1 --hgrp -S @g1/1/parallel@lo -S @g2/3/lo whoami\;sleep 0.3{} ::: {1..8}@g1+g2 | sort
|
||||||
|
|
||||||
|
echo '### --hostgroup one group arg'
|
||||||
|
parallel --delay 0.2 --hgrp -S @g1/1/parallel@lo -S @g2/3/lo whoami\;sleep 0.4{} ::: {1..8}@g2
|
||||||
|
|
||||||
|
echo '### --hostgroup multiple group arg + unused group'
|
||||||
|
parallel --delay 0.2 --hgrp -S @g1/1/parallel@lo -S @g1/3/lo -S @g3/100/tcsh@lo whoami\;sleep 0.8{} ::: {1..8}@g1+g2 | sort
|
||||||
|
|
||||||
|
echo '### --hostgroup two groups @'
|
||||||
|
parallel -k --hgrp -S @g1/parallel@lo -S @g2/lo --tag whoami\;echo ::: parallel@g1 tange@g2
|
||||||
|
|
||||||
|
echo '### --hostgroup'
|
||||||
|
parallel -k --hostgroup -S @grp1/lo echo ::: no_group explicit_group@grp1 implicit_group@lo
|
||||||
|
|
||||||
|
echo '### --hostgroup --sshlogin with @'
|
||||||
|
parallel -k --hostgroups -S parallel@lo echo ::: no_group implicit_group@parallel@lo
|
||||||
|
|
||||||
|
echo '### --hostgroup -S @group'
|
||||||
|
parallel -S @g1/ -S @g1/1/tcsh@lo -S @g1/1/localhost -S @g2/1/parallel@lo whoami\;true ::: {1..6} | sort
|
||||||
|
|
||||||
|
echo '### --hostgroup -S @group1 -Sgrp2'
|
||||||
|
parallel -S @g1/ -S @g2 -S @g1/1/tcsh@lo -S @g1/1/localhost -S @g2/1/parallel@lo whoami\;true ::: {1..6} | sort
|
||||||
|
|
||||||
|
echo '### --hostgroup -S @group1+grp2'
|
||||||
|
parallel -S @g1+g2 -S @g1/1/tcsh@lo -S @g1/1/localhost -S @g2/1/parallel@lo whoami\;true ::: {1..6} | sort
|
||||||
|
}
|
||||||
|
|
||||||
|
par_distribute_input_by_ability() {
|
||||||
|
echo "### bug #48290: round-robin does not distribute data based on business"
|
||||||
|
echo "### Distribute input to jobs that are ready"
|
||||||
|
echo "Job-slot n is 50% slower than n+1, so the order should be 1..7"
|
||||||
|
seq 20000000 |
|
||||||
|
parallel --tagstring {#} -j7 --block 300k --round-robin --pipe \
|
||||||
|
'pv -qL{=$_=$job->seq()**3+9=}0000 |wc -c' |
|
||||||
|
sort -nk2 | field 1
|
||||||
|
}
|
||||||
|
|
||||||
par_print_before_halt_on_error() {
|
par_print_before_halt_on_error() {
|
||||||
echo '### What is printed before the jobs are killed'
|
echo '### What is printed before the jobs are killed'
|
||||||
mytest() {
|
mytest() {
|
||||||
|
@ -41,4 +83,5 @@ par_testhalt() {
|
||||||
|
|
||||||
export -f $(compgen -A function | grep par_)
|
export -f $(compgen -A function | grep par_)
|
||||||
compgen -A function | grep par_ | sort |
|
compgen -A function | grep par_ | sort |
|
||||||
parallel --joblog /tmp/jl-`basename $0` -j10 --tag -k '{} 2>&1'
|
# parallel --joblog /tmp/jl-`basename $0` -j10 --tag -k '{} 2>&1'
|
||||||
|
parallel --joblog /tmp/jl-`basename $0` -j1 --tag -k '{} 2>&1'
|
||||||
|
|
|
@ -9,7 +9,8 @@ export DEBUG=false
|
||||||
p_showsqlresult() {
|
p_showsqlresult() {
|
||||||
SERVERURL=$1
|
SERVERURL=$1
|
||||||
TABLE=$2
|
TABLE=$2
|
||||||
sql $SERVERURL "select Host,Command,V1,V2,Stdout,Stderr from $TABLE order by seq;"
|
# No hostname as it can differ
|
||||||
|
sql $SERVERURL "select Command,V1,V2,Stdout,Stderr from $TABLE order by seq;"
|
||||||
}
|
}
|
||||||
|
|
||||||
p_wrapper() {
|
p_wrapper() {
|
||||||
|
@ -112,18 +113,17 @@ par_shuf() {
|
||||||
touch $T1
|
touch $T1
|
||||||
}
|
}
|
||||||
|
|
||||||
par_sqlandworker_lo() {
|
|
||||||
p_template -S lo
|
|
||||||
}
|
|
||||||
|
|
||||||
par_sql_joblog() {
|
par_sql_joblog() {
|
||||||
echo '### should only give a single --joblog heading'
|
echo '### should only give a single --joblog heading'
|
||||||
echo '### --sqlmaster/--sqlworker'
|
echo '### --sqlmaster/--sqlworker'
|
||||||
parallel -k --joblog - --sqlmaster $DBURL --wait sleep .3\;echo ::: {1..5} ::: {a..e} |
|
parallel -k --joblog - --sqlmaster $DBURL --wait sleep .3\;echo ::: {1..5} ::: {a..e} |
|
||||||
perl -pe 's/\d+\.\d+/999.999/g' | sort -n &
|
perl -pe 's/\d+\.\d+/999.999/g' | sort -n &
|
||||||
sleep 0.5
|
sleep 0.5
|
||||||
parallel -k --joblog - --sqlworker $DBURL
|
T=$(tempfile)
|
||||||
|
parallel -k --joblog - --sqlworker $DBURL > $T
|
||||||
wait
|
wait
|
||||||
|
# Needed because of race condition
|
||||||
|
cat $T; rm $T
|
||||||
echo '### --sqlandworker'
|
echo '### --sqlandworker'
|
||||||
parallel -k --joblog - --sqlandworker $DBURL sleep .3\;echo ::: {1..5} ::: {a..e} |
|
parallel -k --joblog - --sqlandworker $DBURL sleep .3\;echo ::: {1..5} ::: {a..e} |
|
||||||
perl -pe 's/\d+\.\d+/999.999/g' | sort -n
|
perl -pe 's/\d+\.\d+/999.999/g' | sort -n
|
||||||
|
|
|
@ -8,7 +8,7 @@ unset run_test
|
||||||
|
|
||||||
cat <<'EOF' | sed -e s/\$SERVER1/$SERVER1/\;s/\$SERVER2/$SERVER2/ | stdout parallel -vj300% -k --joblog /tmp/jl-`basename $0` -L1
|
cat <<'EOF' | sed -e s/\$SERVER1/$SERVER1/\;s/\$SERVER2/$SERVER2/ | stdout parallel -vj300% -k --joblog /tmp/jl-`basename $0` -L1
|
||||||
echo '### Test --load remote'
|
echo '### Test --load remote'
|
||||||
ssh parallel@lo 'seq 10 | parallel --nice 19 --timeout 15 -j0 -N0 burnP6' &
|
ssh parallel@lo 'seq 10 | parallel --nice 19 --timeout 15 -j0 -qN0 perl -e while\(1\)\{\ \}' &
|
||||||
sleep 1;
|
sleep 1;
|
||||||
stdout /usr/bin/time -f %e parallel -S parallel@lo --load 10 sleep ::: 1 | perl -ne '$_ > 10 and print "OK\n"'
|
stdout /usr/bin/time -f %e parallel -S parallel@lo --load 10 sleep ::: 1 | perl -ne '$_ > 10 and print "OK\n"'
|
||||||
|
|
||||||
|
|
|
@ -1,37 +1,8 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
|
|
||||||
# SSH only allowed to localhost/lo
|
# SSH only allowed to localhost/lo
|
||||||
cat <<'EOF' | sed -e s/\$SERVER1/$SERVER1/\;s/\$SERVER2/$SERVER2/ | parallel -vj100% --retries 3 -k --joblog /tmp/jl-`basename $0` -L1
|
cat <<'EOF' | parallel -vj100% --retries 3 -k --joblog /tmp/jl-`basename $0` -L1
|
||||||
echo '### --hostgroup force ncpu'
|
|
||||||
parallel --delay 0.1 --hgrp -S @g1/1/parallel@lo -S @g2/3/lo whoami\;sleep 0.4{} ::: {1..8} | sort
|
|
||||||
|
|
||||||
echo '### --hostgroup two group arg'
|
|
||||||
parallel -k --sshdelay 0.1 --hgrp -S @g1/1/parallel@lo -S @g2/3/lo whoami\;sleep 0.3{} ::: {1..8}@g1+g2 | sort
|
|
||||||
|
|
||||||
echo '### --hostgroup one group arg'
|
|
||||||
parallel --delay 0.2 --hgrp -S @g1/1/parallel@lo -S @g2/3/lo whoami\;sleep 0.4{} ::: {1..8}@g2
|
|
||||||
|
|
||||||
echo '### --hostgroup multiple group arg + unused group'
|
|
||||||
parallel --delay 0.2 --hgrp -S @g1/1/parallel@lo -S @g1/3/lo -S @g3/100/tcsh@lo whoami\;sleep 0.8{} ::: {1..8}@g1+g2 | sort
|
|
||||||
|
|
||||||
echo '### --hostgroup two groups @'
|
|
||||||
parallel -k --hgrp -S @g1/parallel@lo -S @g2/lo --tag whoami\;echo ::: parallel@g1 tange@g2
|
|
||||||
|
|
||||||
echo '### --hostgroup'
|
|
||||||
parallel -k --hostgroup -S @grp1/lo echo ::: no_group explicit_group@grp1 implicit_group@lo
|
|
||||||
|
|
||||||
echo '### --hostgroup --sshlogin with @'
|
|
||||||
parallel -k --hostgroups -S parallel@lo echo ::: no_group implicit_group@parallel@lo
|
|
||||||
|
|
||||||
echo '### --hostgroup -S @group'
|
|
||||||
parallel -S @g1/ -S @g1/1/tcsh@lo -S @g1/1/localhost -S @g2/1/parallel@lo whoami\;true ::: {1..6} | sort
|
|
||||||
|
|
||||||
echo '### --hostgroup -S @group1 -Sgrp2'
|
|
||||||
parallel -S @g1/ -S @g2 -S @g1/1/tcsh@lo -S @g1/1/localhost -S @g2/1/parallel@lo whoami\;true ::: {1..6} | sort
|
|
||||||
|
|
||||||
echo '### --hostgroup -S @group1+grp2'
|
|
||||||
parallel -S @g1+g2 -S @g1/1/tcsh@lo -S @g1/1/localhost -S @g2/1/parallel@lo whoami\;true ::: {1..6} | sort
|
|
||||||
|
|
||||||
echo '### trailing space in sshlogin'
|
echo '### trailing space in sshlogin'
|
||||||
echo 'sshlogin trailing space' | parallel --sshlogin "ssh -l parallel localhost " echo
|
echo 'sshlogin trailing space' | parallel --sshlogin "ssh -l parallel localhost " echo
|
||||||
|
|
||||||
|
@ -89,21 +60,23 @@ echo '### bug #49404: "Max jobs to run" does not equal the number of jobs specif
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
par_trc_with_space() {
|
par_trc_with_space() {
|
||||||
SERVER1=parallel-server1
|
|
||||||
echo '### Test --trc with space added in filename'
|
echo '### Test --trc with space added in filename'
|
||||||
echo original > '/tmp/parallel space file'
|
cd
|
||||||
echo '/tmp/parallel space file' | stdout parallel --trc "{} more space" -S parallel@$SERVER1 cat {} ">{}\\ more\\ space"
|
mkdir -p tmp
|
||||||
cat '/tmp/parallel space file more space'
|
echo original > 'tmp/parallel space file'
|
||||||
rm '/tmp/parallel space file' '/tmp/parallel space file more space'
|
echo 'tmp/parallel space file' | stdout parallel --trc "{} more space" -S parallel@lo cat {} ">{}\\ more\\ space"
|
||||||
|
cat 'tmp/parallel space file more space'
|
||||||
|
rm 'tmp/parallel space file' 'tmp/parallel space file more space'
|
||||||
}
|
}
|
||||||
|
|
||||||
par_trc_with_special_chars() {
|
par_trc_with_special_chars() {
|
||||||
SERVER1=parallel-server1
|
|
||||||
echo '### Test --trc with >|< added in filename'
|
echo '### Test --trc with >|< added in filename'
|
||||||
echo original > '/tmp/parallel space file2'
|
cd
|
||||||
echo '/tmp/parallel space file2' | stdout parallel --trc "{} >|<" -S parallel@$SERVER1 cat {} ">{}\\ \\>\\|\\<"
|
mkdir -p tmp
|
||||||
cat '/tmp/parallel space file2 >|<'
|
echo original > 'tmp/parallel space file2'
|
||||||
rm '/tmp/parallel space file2' '/tmp/parallel space file2 >|<'
|
echo 'tmp/parallel space file2' | stdout parallel --trc "{} >|<" -S parallel@lo cat {} ">{}\\ \\>\\|\\<"
|
||||||
|
cat 'tmp/parallel space file2 >|<'
|
||||||
|
rm 'tmp/parallel space file2' 'tmp/parallel space file2 >|<'
|
||||||
}
|
}
|
||||||
|
|
||||||
par_return_with_fixedstring() {
|
par_return_with_fixedstring() {
|
||||||
|
|
|
@ -286,7 +286,7 @@ par_fish_man() {
|
||||||
env_parallel ::: true false true false
|
env_parallel ::: true false true false
|
||||||
echo exit value $status should be 2
|
echo exit value $status should be 2
|
||||||
|
|
||||||
env_parallel --no-such-option >/dev/null
|
env_parallel --no-such-option 2>&1 >/dev/null
|
||||||
echo exit value $status should be 255
|
echo exit value $status should be 255
|
||||||
_EOF
|
_EOF
|
||||||
)
|
)
|
||||||
|
@ -632,7 +632,8 @@ par_bash_funky() {
|
||||||
. `which env_parallel.bash`;
|
. `which env_parallel.bash`;
|
||||||
|
|
||||||
myvar="myvar works"
|
myvar="myvar works"
|
||||||
funky=$(perl -e "print pack \"c*\", 1..255")
|
funky_single_line=$(perl -e "print pack \"c*\", 13..126,128..255")
|
||||||
|
funky_multi_line=$(perl -e "print pack \"c*\", 1..12,127")
|
||||||
myarray=("" array_val2 3 "" 5 " space 6 ")
|
myarray=("" array_val2 3 "" 5 " space 6 ")
|
||||||
declare -A assocarr
|
declare -A assocarr
|
||||||
assocarr[a]=assoc_val_a
|
assocarr[a]=assoc_val_a
|
||||||
|
@ -643,14 +644,16 @@ par_bash_funky() {
|
||||||
echo "$myvar"
|
echo "$myvar"
|
||||||
echo "${myarray[5]}"
|
echo "${myarray[5]}"
|
||||||
echo ${assocarr[a]}
|
echo ${assocarr[a]}
|
||||||
echo Funky-"$funky"-funky
|
echo Funkyline-"$funky_single_line"-funkyline
|
||||||
|
echo Funkymultiline-"$funky_multi_line"-funkymultiline
|
||||||
}
|
}
|
||||||
env_parallel alias_echo ::: alias_works
|
env_parallel alias_echo ::: alias_works
|
||||||
env_parallel func_echo ::: function_works
|
env_parallel func_echo ::: function_works
|
||||||
env_parallel -S lo alias_echo ::: alias_works_over_ssh
|
env_parallel -S lo alias_echo ::: alias_works_over_ssh
|
||||||
env_parallel -S lo func_echo ::: function_works_over_ssh
|
env_parallel -S lo func_echo ::: function_works_over_ssh
|
||||||
echo
|
echo
|
||||||
echo "$funky" | parallel --shellquote
|
echo "$funky_single_line" | parallel --shellquote
|
||||||
|
echo "$funky_multi_line" | parallel --shellquote
|
||||||
_EOF
|
_EOF
|
||||||
)
|
)
|
||||||
# Order is often different. Dunno why. So sort
|
# Order is often different. Dunno why. So sort
|
||||||
|
@ -864,6 +867,7 @@ par_bash_env_parallel_fifo() {
|
||||||
myscript=$(cat <<'_EOF'
|
myscript=$(cat <<'_EOF'
|
||||||
echo 'bug #50435: Remote fifo broke in 20150522'
|
echo 'bug #50435: Remote fifo broke in 20150522'
|
||||||
# Due to $PARALLEL_TMP being transferred
|
# Due to $PARALLEL_TMP being transferred
|
||||||
|
. `which env_parallel.bash`
|
||||||
OK=OK
|
OK=OK
|
||||||
echo data from stdin | env_parallel --pipe -S lo --fifo 'cat {} && echo $OK'
|
echo data from stdin | env_parallel --pipe -S lo --fifo 'cat {} && echo $OK'
|
||||||
echo data from stdin | env_parallel --pipe -S lo --cat 'cat {} && echo $OK'
|
echo data from stdin | env_parallel --pipe -S lo --cat 'cat {} && echo $OK'
|
||||||
|
|
|
@ -7,7 +7,7 @@ par_path_remote_bash() {
|
||||||
rm -rf /tmp/parallel
|
rm -rf /tmp/parallel
|
||||||
cp /usr/local/bin/parallel /tmp
|
cp /usr/local/bin/parallel /tmp
|
||||||
|
|
||||||
cat <<'_EOS' | stdout ssh nopathbash@lo -T | grep -Ev 'packages can be updated|System restart required|Welcome to'
|
cat <<'_EOS' | stdout ssh nopathbash@lo -T | grep -Ev 'packages can be updated|System restart required|Welcome to|https://|Ubuntu|http://' | uniq
|
||||||
echo BASH Path before: $PATH with no parallel
|
echo BASH Path before: $PATH with no parallel
|
||||||
parallel echo ::: 1
|
parallel echo ::: 1
|
||||||
# Race condition stderr/stdout
|
# Race condition stderr/stdout
|
||||||
|
@ -28,7 +28,7 @@ par_path_remote_csh() {
|
||||||
rm -rf /tmp/parallel
|
rm -rf /tmp/parallel
|
||||||
cp /usr/local/bin/parallel /tmp
|
cp /usr/local/bin/parallel /tmp
|
||||||
|
|
||||||
cat <<'_EOS' | stdout ssh nopathcsh@lo -T | grep -Ev 'packages can be updated|System restart required|Welcome to'
|
cat <<'_EOS' | stdout ssh nopathcsh@lo -T | grep -Ev 'packages can be updated|System restart required|Welcome to|https://|Ubuntu|http://' | uniq
|
||||||
echo CSH Path before: $PATH with no parallel
|
echo CSH Path before: $PATH with no parallel
|
||||||
which parallel >& /dev/stdout
|
which parallel >& /dev/stdout
|
||||||
echo '^^^^^^^^ Not found is OK'
|
echo '^^^^^^^^ Not found is OK'
|
||||||
|
@ -42,6 +42,8 @@ par_path_remote_csh() {
|
||||||
endif
|
endif
|
||||||
# --filter to see if $PATH with parallel is transferred
|
# --filter to see if $PATH with parallel is transferred
|
||||||
env_parallel --filter --env A,PATH -Slo echo '$PATH' ::: OK
|
env_parallel --filter --env A,PATH -Slo echo '$PATH' ::: OK
|
||||||
|
# Sleep needed to avoid stderr/stdout mixing
|
||||||
|
sleep 1
|
||||||
echo Right now it seems csh does not respect $PATH if set from Perl
|
echo Right now it seems csh does not respect $PATH if set from Perl
|
||||||
echo Done
|
echo Done
|
||||||
_EOS
|
_EOS
|
||||||
|
|
|
@ -13,7 +13,7 @@ stdsort() {
|
||||||
}
|
}
|
||||||
export -f stdsort
|
export -f stdsort
|
||||||
|
|
||||||
cat <<'EOF' | sed -e 's/;$/; /;s/$SERVER1/'$SERVER1'/;s/$SERVER2/'$SERVER2'/' | stdout parallel -vj200 -k --joblog /tmp/jl-`basename $0` -L1
|
cat <<'EOF' | sed -e 's/;$/; /;s/$SERVER1/'$SERVER1'/;s/$SERVER2/'$SERVER2'/' | stdout parallel -vj100 -k --joblog /tmp/jl-`basename $0` -L1
|
||||||
echo '### -0 -n3 echo < files0.xi'
|
echo '### -0 -n3 echo < files0.xi'
|
||||||
stdout xargs -0 -n3 echo < files0.xi
|
stdout xargs -0 -n3 echo < files0.xi
|
||||||
stdout parallel -k -0 -n3 echo < files0.xi
|
stdout parallel -k -0 -n3 echo < files0.xi
|
||||||
|
@ -228,7 +228,8 @@ stdout xargs -iARG echo ARG is xARGx < files.xi
|
||||||
stdout parallel -k -iARG echo ARG is xARGx < files.xi
|
stdout parallel -k -iARG echo ARG is xARGx < files.xi
|
||||||
echo '### -i echo from \{\} to x{}y < items.xi'
|
echo '### -i echo from \{\} to x{}y < items.xi'
|
||||||
stdout xargs -i echo from \{\} to x{}y < items.xi
|
stdout xargs -i echo from \{\} to x{}y < items.xi
|
||||||
stdout parallel -k -i echo from \{\} to x{}y < items.xi
|
# GNU Parallel will see 'echo' as argument to '-i' if not given {}
|
||||||
|
stdout parallel -k -i {} echo from \{\} to x{}y < items.xi
|
||||||
echo '### -i -s26 echo from \{\} to x{}y < items.xi'
|
echo '### -i -s26 echo from \{\} to x{}y < items.xi'
|
||||||
stdsort xargs -i -s26 echo from \{\} to x{}y < items.xi
|
stdsort xargs -i -s26 echo from \{\} to x{}y < items.xi
|
||||||
stdsort parallel -k -i -s26 echo from \{\} to x{}y < items.xi
|
stdsort parallel -k -i -s26 echo from \{\} to x{}y < items.xi
|
||||||
|
|
|
@ -1,54 +1,95 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
echo '### Test --env - https://savannah.gnu.org/bugs/?37351'
|
par_space() {
|
||||||
export TWOSPACES=' 2 spaces '
|
echo '### Test --env - https://savannah.gnu.org/bugs/?37351'
|
||||||
export THREESPACES=" > My brother's 12\" records < "
|
export TWOSPACES=' 2 spaces '
|
||||||
echo a"$TWOSPACES"b 1
|
export THREESPACES=" > My brother's 12\" records < "
|
||||||
stdout parallel --env TWOSPACES echo 'a"$TWOSPACES"b' ::: 1
|
echo a"$TWOSPACES"b 1
|
||||||
stdout parallel -S localhost --env TWOSPACES echo 'a"$TWOSPACES"b' ::: 1
|
stdout parallel --env TWOSPACES echo 'a"$TWOSPACES"b' ::: 1
|
||||||
stdout parallel -S csh@localhost --env TWOSPACES echo 'a"$TWOSPACES"b' ::: 1
|
stdout parallel -S localhost --env TWOSPACES echo 'a"$TWOSPACES"b' ::: 1
|
||||||
stdout parallel -S tcsh@localhost --env TWOSPACES echo 'a"$TWOSPACES"b' ::: 1
|
stdout parallel -S csh@localhost --env TWOSPACES echo 'a"$TWOSPACES"b' ::: 1
|
||||||
|
stdout parallel -S tcsh@localhost --env TWOSPACES echo 'a"$TWOSPACES"b' ::: 1
|
||||||
|
|
||||||
echo a"$TWOSPACES"b a"$THREESPACES"b 2
|
echo a"$TWOSPACES"b a"$THREESPACES"b 2
|
||||||
stdout parallel --env TWOSPACES --env THREESPACES echo 'a"$TWOSPACES"b' 'a"$THREESPACES"b' ::: 2
|
stdout parallel --env TWOSPACES --env THREESPACES echo 'a"$TWOSPACES"b' 'a"$THREESPACES"b' ::: 2
|
||||||
stdout parallel -S localhost --env TWOSPACES --env THREESPACES echo 'a"$TWOSPACES"b' 'a"$THREESPACES"b' ::: 2
|
stdout parallel -S localhost --env TWOSPACES --env THREESPACES echo 'a"$TWOSPACES"b' 'a"$THREESPACES"b' ::: 2
|
||||||
stdout parallel -S csh@localhost --env TWOSPACES --env THREESPACES echo 'a"$TWOSPACES"b' 'a"$THREESPACES"b' ::: 2
|
stdout parallel -S csh@localhost --env TWOSPACES --env THREESPACES echo 'a"$TWOSPACES"b' 'a"$THREESPACES"b' ::: 2
|
||||||
stdout parallel -S tcsh@localhost --env TWOSPACES --env THREESPACES echo 'a"$TWOSPACES"b' 'a"$THREESPACES"b' ::: 2
|
stdout parallel -S tcsh@localhost --env TWOSPACES --env THREESPACES echo 'a"$TWOSPACES"b' 'a"$THREESPACES"b' ::: 2
|
||||||
|
|
||||||
echo a"$TWOSPACES"b a"$THREESPACES"b 3
|
echo a"$TWOSPACES"b a"$THREESPACES"b 3
|
||||||
stdout parallel --env TWOSPACES,THREESPACES echo 'a"$TWOSPACES"b' 'a"$THREESPACES"b' ::: 3
|
stdout parallel --env TWOSPACES,THREESPACES echo 'a"$TWOSPACES"b' 'a"$THREESPACES"b' ::: 3
|
||||||
stdout parallel -S localhost --env TWOSPACES,THREESPACES echo 'a"$TWOSPACES"b' 'a"$THREESPACES"b' ::: 3
|
stdout parallel -S localhost --env TWOSPACES,THREESPACES echo 'a"$TWOSPACES"b' 'a"$THREESPACES"b' ::: 3
|
||||||
stdout parallel -S csh@localhost --env TWOSPACES,THREESPACES echo 'a"$TWOSPACES"b' 'a"$THREESPACES"b' ::: 3
|
stdout parallel -S csh@localhost --env TWOSPACES,THREESPACES echo 'a"$TWOSPACES"b' 'a"$THREESPACES"b' ::: 3
|
||||||
stdout parallel -S tcsh@localhost --env TWOSPACES,THREESPACES echo 'a"$TWOSPACES"b' 'a"$THREESPACES"b' ::: 3
|
stdout parallel -S tcsh@localhost --env TWOSPACES,THREESPACES echo 'a"$TWOSPACES"b' 'a"$THREESPACES"b' ::: 3
|
||||||
|
}
|
||||||
|
|
||||||
export MIN=" \'\""
|
par_space_quote() {
|
||||||
echo a"$MIN"b 4
|
export MIN=" \'\""
|
||||||
stdout parallel --env MIN echo 'a"$MIN"b' ::: 4
|
echo a"$MIN"b 4
|
||||||
stdout parallel -S localhost --env MIN echo 'a"$MIN"b' ::: 4
|
stdout parallel --env MIN echo 'a"$MIN"b' ::: 4
|
||||||
stdout parallel -S csh@localhost --env MIN echo 'a"$MIN"b' ::: 4
|
stdout parallel -S localhost --env MIN echo 'a"$MIN"b' ::: 4
|
||||||
stdout parallel -S tcsh@localhost --env MIN echo 'a"$MIN"b' ::: 4
|
stdout parallel -S csh@localhost --env MIN echo 'a"$MIN"b' ::: 4
|
||||||
|
stdout parallel -S tcsh@localhost --env MIN echo 'a"$MIN"b' ::: 4
|
||||||
|
}
|
||||||
|
|
||||||
export SPC="'"' * ? >o <i*? ][\!#¤%=( ) | }'
|
par_special_char() {
|
||||||
echo a"$SPC"b 5
|
export SPC="'"' * ? >o <i*? ][\!#¤%=( ) | }'
|
||||||
stdout parallel --env SPC echo 'a"$SPC"b' ::: 5
|
echo a"$SPC"b 5
|
||||||
stdout parallel -S localhost --env SPC echo 'a"$SPC"b' ::: 5
|
LANG=C stdout parallel --env SPC echo 'a"$SPC"b' ::: 5
|
||||||
stdout parallel -S csh@localhost --env SPC echo 'a"$SPC"b' ::: 5
|
LANG=C stdout parallel -S localhost --env SPC echo 'a"$SPC"b' ::: 5
|
||||||
stdout parallel -S tcsh@localhost --env SPC echo 'a"$SPC"b' ::: 5
|
LANG=C stdout parallel -S csh@localhost --env SPC echo 'a"$SPC"b' ::: 5
|
||||||
|
LANG=C stdout parallel -S tcsh@localhost --env SPC echo 'a"$SPC"b' ::: 5
|
||||||
|
}
|
||||||
|
|
||||||
echo '### Test --env for \n and \\ - single and double (bash only) - no output is good'
|
test_chr_on_sshlogin() {
|
||||||
perl -e 'for(10,92) { printf "%c%c %c%d\0",$_,$_,$_,$_ }' | stdout parallel --nice 19 -j4 -k -I // --arg-sep _ -0 V=// V2=V2=// parallel -k -j1 -S 2/:,2/lo --env V,V2 echo \''"{}$V$V2"'\' ::: {#} {#} {#} {#} | sort | uniq -c | grep -v ' 4 '|grep -v xauth |grep -v X11
|
# test_chr_on_sshlogin 10,92 2/:,2/lo
|
||||||
|
# test_chr_on_sshlogin 10,92 2/tcsh@lo,2/csh@lo
|
||||||
|
chr="$1"
|
||||||
|
sshlogin="$2"
|
||||||
|
onall="$3"
|
||||||
|
perl -e 'for('$chr') { printf "%c%c %c%d\0",$_,$_,$_,$_ }' |
|
||||||
|
stdout parallel -j4 -k -I // --arg-sep _ -0 V=// V2=V2=// LANG=C parallel -k -j1 $onall -S $sshlogin --env V,V2,LANG echo \''"{}$V$V2"'\' ::: {#} {#} {#} {#} |
|
||||||
|
sort |
|
||||||
|
uniq -c |
|
||||||
|
grep -v ' 4 '|
|
||||||
|
grep -v xauth |
|
||||||
|
grep -v X11
|
||||||
|
}
|
||||||
|
export -f test_chr_on_sshlogin
|
||||||
|
|
||||||
echo '### Test --env for \n and \\ - single and double (*csh only) - no output is good but csh fails'
|
par_env_newline_backslash_bash() {
|
||||||
perl -e 'for(10,92) { printf "%c%c %c%d\0",$_,$_,$_,$_ }' | stdout parallel --nice 19 -j4 -k -I // --arg-sep _ -0 V=// V2=V2=// parallel -k -j1 -S 2/tcsh@lo,2/csh@lo --env V,V2 echo \''"{}$V$V2"'\' ::: {#} {#} {#} {#} | sort | uniq -c | grep -v ' 4 '|grep -v xauth |grep -v X11
|
echo '### Test --env for \n and \\ - single and double (bash only) - no output is good'
|
||||||
|
test_chr_on_sshlogin 10,92 2/:,2/lo ''
|
||||||
|
}
|
||||||
|
|
||||||
echo '### Test --env for \n and \\ - single and double --onall (bash only) - no output is good'
|
par_env_newline_backslash_csh() {
|
||||||
perl -e 'for(10,92) { printf "%c%c %c%d\0",$_,$_,$_,$_ }' | stdout parallel --nice 19 -j4 -k -I // --arg-sep _ -0 V=// V2=V2=// parallel -k -j1 -S :,lo --onall --env V,V2 echo \''"{}$V$V2"'\' ::: {#} | sort | uniq -c | grep -v ' 4 '|grep -v xauth |grep -v X11
|
echo '### Test --env for \n and \\ - single and double (*csh only) - no output is good but csh fails'
|
||||||
|
test_chr_on_sshlogin 10,92 2/tcsh@lo,2/csh@lo ''
|
||||||
|
}
|
||||||
|
|
||||||
echo '### Test --env for \n and \\ - single and double --onall (*csh only) - no output is good but csh fails'
|
par_env_newline_backslash_onall_bash() {
|
||||||
perl -e 'for(10,92) { printf "%c%c %c%d\0",$_,$_,$_,$_ }' | stdout parallel --nice 19 -j4 -k -I // --arg-sep _ -0 V=// V2=V2=// parallel -k -j1 -S 1/tcsh@lo,1/csh@lo --onall --env V,V2 echo \''"{}$V$V2"'\' ::: {#} | sort | uniq -c | grep -v ' 2 '|grep -v xauth |grep -v X11
|
echo '### Test --env for \n and \\ - single and double --onall (bash only) - no output is good'
|
||||||
|
test_chr_on_sshlogin 10,92 :,lo --onall
|
||||||
|
}
|
||||||
|
|
||||||
echo '### Test --env for \160 - which kills csh - single and double - no output is good'
|
par_env_newline_backslash_onall_csh() {
|
||||||
perl -e 'for(160) { printf "%c%c %c%d\0",$_,$_,$_,$_ }' | stdout parallel --nice 19 -j4 -k -I // --arg-sep _ -0 V=// V2=V2=// parallel -k -j1 -S :,1/lo,1/tcsh@lo --env V,V2 echo \''"{}$V$V2"'\' ::: {#} {#} {#} | uniq -c | grep -v ' 3 '|grep -v xauth |grep -v X11
|
echo '### Test --env for \n and \\ - single and double --onall (*csh only) - no output is good but csh fails'
|
||||||
|
test_chr_on_sshlogin 10,92 2/tcsh@lo,2/csh@lo --onall
|
||||||
|
}
|
||||||
|
|
||||||
echo '### Test --env for \160 - which kills csh - single and double --onall - no output is good'
|
par_env_160() {
|
||||||
perl -e 'for(160) { printf "%c%c %c%d\0",$_,$_,$_,$_ }' | stdout parallel --nice 19 -j4 -k -I // --arg-sep _ -0 V=// V2=V2=// parallel -k -j1 -S :,1/lo,1/tcsh@lo --onall --env V,V2 echo \''"{}$V$V2"'\' ::: {#} | uniq -c | grep -v ' 3 '|grep -v xauth |grep -v X11
|
echo '### Test --env for \160 - which kills csh - single and double - no output is good'
|
||||||
|
test_chr_on_sshlogin 160 :,1/lo,1/tcsh@lo |
|
||||||
|
grep -v ' 3 '
|
||||||
|
}
|
||||||
|
|
||||||
|
par_env_160_onall() {
|
||||||
|
echo '### Test --env for \160 - which kills csh - single and double --onall - no output is good'
|
||||||
|
test_chr_on_sshlogin 160 :,1/lo,1/tcsh@lo --onall |
|
||||||
|
grep -v ' 3 '
|
||||||
|
}
|
||||||
|
|
||||||
|
export -f $(compgen -A function | grep par_)
|
||||||
|
#compgen -A function | grep par_ | sort | parallel --delay $D -j$P --tag -k '{} 2>&1'
|
||||||
|
compgen -A function | grep par_ | sort |
|
||||||
|
parallel --joblog /tmp/jl-`basename $0` --retries 3 -j2 --tag -k '{} 2>&1'
|
||||||
|
|
|
@ -1,15 +1,20 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
|
cpuburn=$(tempfile)
|
||||||
|
(echo '#!/usr/bin/perl'
|
||||||
|
echo "eval{setpriority(0,0,9)}; while(1){}") > $cpuburn
|
||||||
|
chmod 700 $cpuburn
|
||||||
|
|
||||||
forceload () {
|
forceload () {
|
||||||
# Force load
|
# Force load
|
||||||
LOAD=$1
|
LOAD=$1
|
||||||
# Start 10 times as many burnP6
|
# Start 10 times as many cpuburn
|
||||||
seq 0 0.1 $1 | parallel -j0 timeout 20 burnP6 2>/dev/null &
|
seq 0 0.1 $1 | parallel -j0 timeout 20 $cpuburn 2>/dev/null &
|
||||||
PID=$!
|
PID=$!
|
||||||
# Give GNU Parallel 1 second to startup
|
# Give GNU Parallel 1 second to startup
|
||||||
sleep 1
|
sleep 1
|
||||||
perl -e 'do{$a=`uptime`} while($a=~/average: *(\S+)/ and $1 < '$LOAD')'
|
perl -e 'do{$a=`uptime`} while($a=~/average: *(\S+)/ and $1 < '$LOAD')'
|
||||||
# Load is now > $CPUS
|
# Load is now > $LOAD
|
||||||
}
|
}
|
||||||
|
|
||||||
# Force load avg > number of cpu cores
|
# Force load avg > number of cpu cores
|
||||||
|
@ -27,15 +32,16 @@ echo '### Test slow arguments generation - https://savannah.gnu.org/bugs/?32834'
|
||||||
seq 1 3 | parallel -j1 "sleep 2; echo {}" | parallel -kj2 echo
|
seq 1 3 | parallel -j1 "sleep 2; echo {}" | parallel -kj2 echo
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
# Make sure we got all the burnP6 killed
|
# Make sure we got all the cpuburn killed
|
||||||
killall -9 burnP6 2>/dev/null
|
killall $(basename $cpuburn) 2>/dev/null
|
||||||
|
|
||||||
echo '### Test too slow spawning'
|
echo '### Test too slow spawning'
|
||||||
# Let the commands below run during high load
|
# Let the commands below run during high load
|
||||||
seq 1000 | timeout 20 parallel -j400% -N0 burnP6 2>/dev/null &
|
seq 1000 | timeout 20 parallel -j400% -N0 $cpuburn 2>/dev/null &
|
||||||
PID=$!
|
PID=$!
|
||||||
seq 1 1000 | stdout nice nice parallel --halt 1 -uj0 -N0 kill $PID |
|
seq 1 1000 | stdout nice nice parallel --halt 1 -uj0 -N0 kill $PID |
|
||||||
perl -pe '/parallel: Warning: Starting \d+ processes took/ and do {close STDIN; `kill '$PID';killall -9 burnP6`; print "OK\n"; exit }';
|
perl -pe '/parallel: Warning: Starting \d+ processes took/ and do {close STDIN; `kill '$PID';killall '$(basename $cpuburn)'`; print "OK\n"; exit }';
|
||||||
|
|
||||||
# Make sure we got all the burnP6 killed
|
# Make sure we got all the cpuburn killed
|
||||||
killall -9 burnP6 2>/dev/null
|
killall $(basename $cpuburn) 2>/dev/null
|
||||||
|
rm $cpuburn
|
||||||
|
|
|
@ -3,19 +3,28 @@
|
||||||
echo 'bug #46120: Suspend should suspend (at least local) children'
|
echo 'bug #46120: Suspend should suspend (at least local) children'
|
||||||
echo 'it should burn 1.9 CPU seconds, but no more than that'
|
echo 'it should burn 1.9 CPU seconds, but no more than that'
|
||||||
echo 'The 5 second sleep will make it be killed by timeout when it fgs'
|
echo 'The 5 second sleep will make it be killed by timeout when it fgs'
|
||||||
stdout bash -i -c 'stdout /usr/bin/time -f CPUTIME=%U parallel --timeout 5 burnP6 ::: 1 | grep -q CPUTIME=1 &
|
stdout bash -i -c 'stdout /usr/bin/time -f CPUTIME=%U parallel --timeout 5 -q perl -e "while(1){ }" ::: 1 | grep -q CPUTIME=1 &
|
||||||
sleep 1.9;
|
sleep 1.9;
|
||||||
kill -TSTP -$!;
|
kill -TSTP -$!;
|
||||||
sleep 5;
|
sleep 5;
|
||||||
fg;
|
fg;
|
||||||
echo Zero=OK $?' | grep -v '\[1\]'
|
echo Zero=OK $?' | grep -v '\[1\]' | grep -v 'SHA256'
|
||||||
|
|
||||||
stdout bash -i -c 'echo 1 | stdout /usr/bin/time -f CPUTIME=%U parallel --timeout 5 burnP6 | grep -q CPUTIME=1 &
|
stdout bash -i -c 'echo 1 | stdout /usr/bin/time -f CPUTIME=%U parallel --timeout 5 -q perl -e "while(1){ }" | grep -q CPUTIME=1 &
|
||||||
sleep 1.9;
|
sleep 1.9;
|
||||||
kill -TSTP -$!;
|
kill -TSTP -$!;
|
||||||
sleep 5;
|
sleep 5;
|
||||||
fg;
|
fg;
|
||||||
echo Zero=OK $?' | grep -v '\[1\]'
|
echo Zero=OK $?' | grep -v '\[1\]' | grep -v 'SHA256'
|
||||||
|
|
||||||
|
echo Control case: Burn for 2.9 seconds
|
||||||
|
stdout bash -i -c 'stdout /usr/bin/time -f CPUTIME=%U parallel --timeout 5 -q perl -e "while(1){ }" ::: 1 | grep -q CPUTIME=1 &
|
||||||
|
sleep 2.9;
|
||||||
|
kill -TSTP -$!;
|
||||||
|
sleep 5;
|
||||||
|
fg;
|
||||||
|
echo 1=OK $?' | grep -v '\[1\]' | grep -v 'SHA256'
|
||||||
|
|
||||||
|
|
||||||
cat <<'EOF' | sed -e 's/;$/; /;' | stdout parallel -vj0 -k --joblog /tmp/jl-`basename $0` -L1
|
cat <<'EOF' | sed -e 's/;$/; /;' | stdout parallel -vj0 -k --joblog /tmp/jl-`basename $0` -L1
|
||||||
echo '### -L -n with pipe'
|
echo '### -L -n with pipe'
|
||||||
|
|
|
@ -23,39 +23,39 @@ export -f par_tmux
|
||||||
|
|
||||||
cat <<'EOF' | sed -e 's/;$/; /;s/$SERVER1/'$SERVER1'/;s/$SERVER2/'$SERVER2'/' | stdout parallel -vj3 --timeout 60 --retries 2 -k --joblog /tmp/jl-`basename $0` -L1
|
cat <<'EOF' | sed -e 's/;$/; /;s/$SERVER1/'$SERVER1'/;s/$SERVER2/'$SERVER2'/' | stdout parallel -vj3 --timeout 60 --retries 2 -k --joblog /tmp/jl-`basename $0` -L1
|
||||||
|
|
||||||
echo '### tmux1.9'
|
echo '### tmux-1.9'
|
||||||
seq 000 100 | PARALLEL_TMUX=tmux1.9 par_tmux
|
seq 000 100 | PARALLEL_TMUX=tmux-1.9 par_tmux
|
||||||
seq 100 200 | PARALLEL_TMUX=tmux1.9 par_tmux
|
seq 100 200 | PARALLEL_TMUX=tmux-1.9 par_tmux
|
||||||
seq 200 300 | PARALLEL_TMUX=tmux1.9 par_tmux
|
seq 200 300 | PARALLEL_TMUX=tmux-1.9 par_tmux
|
||||||
seq 300 400 | PARALLEL_TMUX=tmux1.9 par_tmux
|
seq 300 400 | PARALLEL_TMUX=tmux-1.9 par_tmux
|
||||||
seq 400 500 | PARALLEL_TMUX=tmux1.9 par_tmux
|
seq 400 500 | PARALLEL_TMUX=tmux-1.9 par_tmux
|
||||||
seq 500 600 | PARALLEL_TMUX=tmux1.9 par_tmux
|
seq 500 600 | PARALLEL_TMUX=tmux-1.9 par_tmux
|
||||||
seq 600 700 | PARALLEL_TMUX=tmux1.9 par_tmux
|
seq 600 700 | PARALLEL_TMUX=tmux-1.9 par_tmux
|
||||||
seq 700 800 | PARALLEL_TMUX=tmux1.9 par_tmux
|
seq 700 800 | PARALLEL_TMUX=tmux-1.9 par_tmux
|
||||||
seq 800 900 | PARALLEL_TMUX=tmux1.9 par_tmux
|
seq 800 900 | PARALLEL_TMUX=tmux-1.9 par_tmux
|
||||||
seq 900 1000 | PARALLEL_TMUX=tmux1.9 par_tmux
|
seq 900 1000 | PARALLEL_TMUX=tmux-1.9 par_tmux
|
||||||
seq 1000 1006 | PARALLEL_TMUX=tmux1.9 par_tmux
|
seq 1000 1006 | PARALLEL_TMUX=tmux-1.9 par_tmux
|
||||||
echo '### tmux1.9 fails'
|
echo '### tmux-1.9 fails'
|
||||||
echo 1007 | PARALLEL_TMUX=tmux1.9 par_tmux
|
echo 1007 | PARALLEL_TMUX=tmux-1.9 par_tmux
|
||||||
echo 1008 | PARALLEL_TMUX=tmux1.9 par_tmux
|
echo 1008 | PARALLEL_TMUX=tmux-1.9 par_tmux
|
||||||
echo 1009 | PARALLEL_TMUX=tmux1.9 par_tmux
|
echo 1009 | PARALLEL_TMUX=tmux-1.9 par_tmux
|
||||||
|
|
||||||
echo '### tmux1.8'
|
echo '### tmux-1.8'
|
||||||
seq 1 50 | PARALLEL_TMUX=tmux1.8 par_tmux
|
seq 1 50 | PARALLEL_TMUX=tmux-1.8 par_tmux
|
||||||
seq 51 100 | PARALLEL_TMUX=tmux1.8 par_tmux
|
seq 51 100 | PARALLEL_TMUX=tmux-1.8 par_tmux
|
||||||
seq 101 113 | PARALLEL_TMUX=tmux1.8 par_tmux
|
seq 101 113 | PARALLEL_TMUX=tmux-1.8 par_tmux
|
||||||
echo '### tmux1.8 fails'
|
echo '### tmux-1.8 fails'
|
||||||
echo 114 | PARALLEL_TMUX=tmux1.8 par_tmux
|
echo 114 | PARALLEL_TMUX=tmux-1.8 par_tmux
|
||||||
echo 115 | PARALLEL_TMUX=tmux1.8 par_tmux
|
echo 115 | PARALLEL_TMUX=tmux-1.8 par_tmux
|
||||||
echo 116 | PARALLEL_TMUX=tmux1.8 par_tmux
|
echo 116 | PARALLEL_TMUX=tmux-1.8 par_tmux
|
||||||
|
|
||||||
echo '### tmux1.8 0..255 ascii'
|
echo '### tmux-1.8 0..255 ascii'
|
||||||
perl -e 'print map { ($_, map { pack("c*",$_) } grep { $_>=1 && $_!=10 } $_-110..$_),"\n" } 0..255' |
|
perl -e 'print map { ($_, map { pack("c*",$_) } grep { $_>=1 && $_!=10 } $_-110..$_),"\n" } 0..255' |
|
||||||
PARALLEL_TMUX=tmux1.8 stdout parallel --tmux --timeout 3 echo | par_tmux_filter; echo $?
|
PARALLEL_TMUX=tmux-1.8 stdout parallel --tmux --timeout 3 echo | par_tmux_filter; echo $?
|
||||||
|
|
||||||
echo '### tmux1.9 0..255 ascii'
|
echo '### tmux-1.9 0..255 ascii'
|
||||||
perl -e 'print map { ($_, map { pack("c*",$_) } grep { $_>=1 && $_!=10 } 0..$_),"\n" } 0..255' |
|
perl -e 'print map { ($_, map { pack("c*",$_) } grep { $_>=1 && $_!=10 } 0..$_),"\n" } 0..255' |
|
||||||
PARALLEL_TMUX=tmux1.9 stdout parallel --tmux --timeout 3 echo | par_tmux_filter; echo $?
|
PARALLEL_TMUX=tmux-1.9 stdout parallel --tmux --timeout 3 echo | par_tmux_filter; echo $?
|
||||||
|
|
||||||
echo '### Test output ascii'
|
echo '### Test output ascii'
|
||||||
rm -f /tmp/paralocal7-ascii*;
|
rm -f /tmp/paralocal7-ascii*;
|
||||||
|
@ -63,10 +63,10 @@ echo '### Test output ascii'
|
||||||
sort /tmp/paralocal7-ascii* | md5sum
|
sort /tmp/paralocal7-ascii* | md5sum
|
||||||
|
|
||||||
echo '### Test critical lengths. Must not block'
|
echo '### Test critical lengths. Must not block'
|
||||||
seq 70 130 | PARALLEL_TMUX=tmux1.8 stdout parallel --tmux echo '{}{=$_="&"x$_=}' | par_tmux_filter
|
seq 70 130 | PARALLEL_TMUX=tmux-1.8 stdout parallel --tmux echo '{}{=$_="&"x$_=}' | par_tmux_filter
|
||||||
seq 70 130 | PARALLEL_TMUX=tmux1.9 stdout parallel --tmux echo '{}{=$_="&"x$_=}' | par_tmux_filter
|
seq 70 130 | PARALLEL_TMUX=tmux-1.9 stdout parallel --tmux echo '{}{=$_="&"x$_=}' | par_tmux_filter
|
||||||
seq 280 425 | PARALLEL_TMUX=tmux1.8 stdout parallel --tmux echo '{}{=$_="a"x$_=}' | par_tmux_filter
|
seq 280 425 | PARALLEL_TMUX=tmux-1.8 stdout parallel --tmux echo '{}{=$_="a"x$_=}' | par_tmux_filter
|
||||||
seq 280 425 | PARALLEL_TMUX=tmux1.9 stdout parallel --tmux echo '{}{=$_="a"x$_=}' | par_tmux_filter
|
seq 280 425 | PARALLEL_TMUX=tmux-1.9 stdout parallel --tmux echo '{}{=$_="a"x$_=}' | par_tmux_filter
|
||||||
|
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
|
|
|
@ -8,7 +8,7 @@ echo '### Test --env all chars except \n,\92,\160 - single and double - no outpu
|
||||||
|
|
||||||
# This is fast
|
# This is fast
|
||||||
perl -e 'for(1..9,9,11..91,91,93..159,159,161..255) { printf "%c",$_ } printf "\0"' |
|
perl -e 'for(1..9,9,11..91,91,93..159,159,161..255) { printf "%c",$_ } printf "\0"' |
|
||||||
stdout parallel -k -I // --arg-sep _ -0 V=// V2=V2=// parallel -k -S 1/:,1/lo,1/tcsh@lo,1/csh@lo --onall --env V,V2 echo \''"{}$V$V2"'\' ::: {#} | uniq -c | grep -v ' 4 '|grep -v xauth |grep -v X11
|
stdout parallel -k -I // --arg-sep _ -0 V=// V2=V2=// LANG=C parallel -k -S 1/:,1/lo,1/tcsh@lo,1/csh@lo --onall --env V,V2,LANG echo \''"{}$V$V2"'\' ::: {#} | uniq -c | grep -v ' 4 '|grep -v xauth |grep -v X11
|
||||||
|
|
||||||
echo '### bug #37262: --slf + --filter-hosts fails'
|
echo '### bug #37262: --slf + --filter-hosts fails'
|
||||||
parallel --nonall --filter-hosts --sshloginfile <(echo localhost) echo OK
|
parallel --nonall --filter-hosts --sshloginfile <(echo localhost) echo OK
|
||||||
|
|
|
@ -152,22 +152,6 @@ echo '### PARALLEL_TMUX not found'
|
||||||
PARALLEL_TMUX=not-existing parallel --tmux echo ::: 1
|
PARALLEL_TMUX=not-existing parallel --tmux echo ::: 1
|
||||||
parallel: Error: not-existing not found in $PATH.
|
parallel: Error: not-existing not found in $PATH.
|
||||||
echo '**'
|
echo '**'
|
||||||
**
|
|
||||||
parallel -j4 --halt 2 ::: 'sleep 1' burnP6 false; killall burnP6 && echo ERROR: burnP6 should already have been killed
|
|
||||||
parallel: This job failed:
|
|
||||||
false
|
|
||||||
burnP6: no process found
|
|
||||||
parallel -j4 --halt -2 ::: 'sleep 1' burnP5 true; killall burnP5 && echo ERROR: burnP5 should already have been killed
|
|
||||||
parallel: This job succeeded:
|
|
||||||
true
|
|
||||||
burnP5: no process found
|
|
||||||
parallel --halt error echo ::: should not print
|
|
||||||
parallel: Error: --halt must have 'never', 'soon', or 'now'.
|
|
||||||
parallel --halt soon echo ::: should not print
|
|
||||||
parallel: Error: --halt soon must be followed by ,success or ,fail.
|
|
||||||
parallel --halt now echo ::: should not print
|
|
||||||
parallel: Error: --halt now must be followed by ,success or ,fail.
|
|
||||||
echo '**'
|
|
||||||
**
|
**
|
||||||
echo '### bug #44995: parallel echo {#} ::: 1 2 ::: 1 2'
|
echo '### bug #44995: parallel echo {#} ::: 1 2 ::: 1 2'
|
||||||
### bug #44995: parallel echo {#} ::: 1 2 ::: 1 2
|
### bug #44995: parallel echo {#} ::: 1 2 ::: 1 2
|
||||||
|
@ -308,8 +292,8 @@ OK
|
||||||
~/privat/parallel/testsuite
|
~/privat/parallel/testsuite
|
||||||
OK
|
OK
|
||||||
parallel --wd ... 'pwd; echo $OLDPWD; echo' ::: OK | perl -pe 's/\d+/0/g'
|
parallel --wd ... 'pwd; echo $OLDPWD; echo' ::: OK | perl -pe 's/\d+/0/g'
|
||||||
/mnt/0tb/home/tange/.parallel/tmp/aspire-0-0
|
~/.parallel/tmp/hk-0-0
|
||||||
/mnt/0tb/home/tange/privat/parallel/testsuite
|
~/privat/parallel/testsuite
|
||||||
OK
|
OK
|
||||||
parallel --wd . 'pwd; echo $OLDPWD; echo' ::: OK
|
parallel --wd . 'pwd; echo $OLDPWD; echo' ::: OK
|
||||||
~/privat/parallel/testsuite
|
~/privat/parallel/testsuite
|
||||||
|
@ -1495,7 +1479,7 @@ echo '### bug #34422: parallel -X --eta crashes with div by zero'
|
||||||
seq 2 | stdout parallel -X --eta echo | grep -E -v 'ETA:.*AVG'
|
seq 2 | stdout parallel -X --eta echo | grep -E -v 'ETA:.*AVG'
|
||||||
|
|
||||||
Computers / CPU cores / Max jobs to run
|
Computers / CPU cores / Max jobs to run
|
||||||
1:local / 8 / 2
|
1:local / 2 / 2
|
||||||
|
|
||||||
Computer:jobs running/jobs completed/%of started jobs/Average seconds to complete
|
Computer:jobs running/jobs completed/%of started jobs/Average seconds to complete
|
||||||
echo '**'
|
echo '**'
|
||||||
|
@ -1612,6 +1596,13 @@ par_append_joblog ### can you append to a joblog using +
|
||||||
par_append_joblog 1
|
par_append_joblog 1
|
||||||
par_append_joblog 1
|
par_append_joblog 1
|
||||||
par_append_joblog 3 /tmp/parallel_append_joblog
|
par_append_joblog 3 /tmp/parallel_append_joblog
|
||||||
|
par_basic_halt parallel: This job failed:
|
||||||
|
par_basic_halt false
|
||||||
|
par_basic_halt parallel: This job succeeded:
|
||||||
|
par_basic_halt true
|
||||||
|
par_basic_halt parallel: Error: --halt must have 'never', 'soon', or 'now'.
|
||||||
|
par_basic_halt parallel: Error: --halt soon must be followed by ,success or ,fail.
|
||||||
|
par_basic_halt parallel: Error: --halt now must be followed by ,success or ,fail.
|
||||||
par_empty bug #:
|
par_empty bug #:
|
||||||
par_empty true
|
par_empty true
|
||||||
par_empty_line ### Test bug: empty line for | sh with -k
|
par_empty_line ### Test bug: empty line for | sh with -k
|
||||||
|
@ -1628,12 +1619,25 @@ par_link_files_as_only_arg 3 3 3
|
||||||
par_macron ¯
|
par_macron ¯
|
||||||
par_macron ¯
|
par_macron ¯
|
||||||
par_macron ¯ ¯
|
par_macron ¯ ¯
|
||||||
|
par_macron ¯ ¯
|
||||||
|
par_macron ¯
|
||||||
|
par_macron ¯® ¯
|
||||||
|
par_macron "¯®" ¯
|
||||||
par_macron ¯®
|
par_macron ¯®
|
||||||
par_macron ¯®
|
par_macron ¯®
|
||||||
par_macron ¯® ¯®
|
par_macron ¯® ¯®
|
||||||
|
par_macron ¯® ¯®
|
||||||
|
par_macron ¯®
|
||||||
|
par_macron ¯®® ¯®
|
||||||
|
par_macron "¯®®" ¯®
|
||||||
|
par_macron /bin/bash: -c: line 0: syntax error near unexpected token `newline'
|
||||||
|
par_macron /bin/bash: -c: line 0: `echo ¯<¯<¯>¯>'
|
||||||
par_macron ¯<¯<¯>¯>
|
par_macron ¯<¯<¯>¯>
|
||||||
par_macron ¯<¯<¯>¯>
|
par_macron /bin/bash: ¯: No such file or directory
|
||||||
par_macron ¯<¯<¯>¯> ¯<¯<¯>¯>
|
par_macron ¯<¯<¯>¯> ¯<¯<¯>¯>
|
||||||
|
par_macron ¯<¯<¯>¯>
|
||||||
|
par_macron ¯®<¯®<¯®>¯®> ¯<¯<¯>¯>
|
||||||
|
par_macron "¯®<¯®<¯®>¯®>" ¯<¯<¯>¯>
|
||||||
par_pipepart_block_bigger_2G ### Test that --pipepart can have blocks > 2GB
|
par_pipepart_block_bigger_2G ### Test that --pipepart can have blocks > 2GB
|
||||||
par_pipepart_block_bigger_2G 1 1 4
|
par_pipepart_block_bigger_2G 1 1 4
|
||||||
par_python_children ### bug #49970: Python child process dies if --env is used
|
par_python_children ### bug #49970: Python child process dies if --env is used
|
||||||
|
|
|
@ -1,16 +1,19 @@
|
||||||
|
par__memleak ### Test memory consumption stays (almost) the same for 30 and 300 jobs
|
||||||
|
par__memleak should give 1 == true
|
||||||
|
par__memleak Memory use should not depend very much on the total number of jobs run\n
|
||||||
|
par__memleak Test if memory consumption(300 jobs) < memory consumption(30 jobs) * 110%
|
||||||
|
par__memleak 1
|
||||||
|
par__pipe_tee bug #45479: --pipe/--pipepart --tee
|
||||||
|
par__pipe_tee --pipe --tee
|
||||||
|
par__pipe_tee 3221225472
|
||||||
|
par__pipepart_spawn ### bug #46214: Using --pipepart doesnt spawn multiple jobs in version 20150922
|
||||||
|
par__pipepart_spawn 1:local / 2 / 999
|
||||||
|
par__pipepart_tee bug #45479: --pipe/--pipepart --tee
|
||||||
|
par__pipepart_tee --pipepart --tee
|
||||||
|
par__pipepart_tee 3221225472
|
||||||
par_compress_fail ### bug #41609: --compress fails
|
par_compress_fail ### bug #41609: --compress fails
|
||||||
par_compress_fail 24812dd0f24a26d08a780f988b9d5ad2 -
|
par_compress_fail 24812dd0f24a26d08a780f988b9d5ad2 -
|
||||||
par_compress_fail 24812dd0f24a26d08a780f988b9d5ad2 -
|
par_compress_fail 24812dd0f24a26d08a780f988b9d5ad2 -
|
||||||
par_distribute_input_by_ability ### bug #48290: round-robin does not distribute data based on business
|
|
||||||
par_distribute_input_by_ability ### Distribute input to jobs that are ready
|
|
||||||
par_distribute_input_by_ability Job-slot n is 50% slower than n+1, so the order should be 1..7
|
|
||||||
par_distribute_input_by_ability 1
|
|
||||||
par_distribute_input_by_ability 2
|
|
||||||
par_distribute_input_by_ability 3
|
|
||||||
par_distribute_input_by_ability 4
|
|
||||||
par_distribute_input_by_ability 5
|
|
||||||
par_distribute_input_by_ability 6
|
|
||||||
par_distribute_input_by_ability 7
|
|
||||||
par_first_print_halt_on_error_1 ### Test first dying print --halt-on-error 1
|
par_first_print_halt_on_error_1 ### Test first dying print --halt-on-error 1
|
||||||
par_first_print_halt_on_error_1 0
|
par_first_print_halt_on_error_1 0
|
||||||
par_first_print_halt_on_error_1 parallel: This job failed:
|
par_first_print_halt_on_error_1 parallel: This job failed:
|
||||||
|
@ -258,24 +261,22 @@ par_halt_on_error 2 false false sleep 1;false
|
||||||
par_halt_on_error 2 false false parallel: This job failed:
|
par_halt_on_error 2 false false parallel: This job failed:
|
||||||
par_halt_on_error 2 false false sleep 1;false
|
par_halt_on_error 2 false false sleep 1;false
|
||||||
par_interactive ### Test -p --interactive
|
par_interactive ### Test -p --interactive
|
||||||
par_interactive spawn /tmp/parallel-script-for-expect
|
par_interactive opt--interactive 1
|
||||||
par_interactive sleep 0.1; echo opt-p 1 ?...y
|
par_interactive opt--interactive 3
|
||||||
par_interactive sleep 0.1; echo opt-p 2 ?...n
|
|
||||||
par_interactive sleep 0.1; echo opt-p 3 ?...y
|
|
||||||
par_interactive opt-p 1
|
par_interactive opt-p 1
|
||||||
par_interactive opt-p 3
|
par_interactive opt-p 3
|
||||||
par_interactive sleep 0.1; echo opt--interactive 1 ?...y
|
par_interactive sleep 0.1; echo opt--interactive 1 ?...y
|
||||||
par_interactive sleep 0.1; echo opt--interactive 2 ?...n
|
par_interactive sleep 0.1; echo opt--interactive 2 ?...n
|
||||||
par_interactive sleep 0.1; echo opt--interactive 3 ?...y
|
par_interactive sleep 0.1; echo opt--interactive 3 ?...y
|
||||||
par_interactive opt--interactive 1
|
par_interactive sleep 0.1; echo opt-p 1 ?...y
|
||||||
par_interactive opt--interactive 3
|
par_interactive sleep 0.1; echo opt-p 2 ?...n
|
||||||
|
par_interactive sleep 0.1; echo opt-p 3 ?...y
|
||||||
|
par_interactive spawn /tmp/parallel-script-for-expect
|
||||||
par_k ### Test -k
|
par_k ### Test -k
|
||||||
par_k parallel: Warning: Only enough file handles to run 9 jobs in parallel.
|
par_k parallel: Warning: Only enough file handles to run 8 jobs in parallel.
|
||||||
par_k parallel: Warning: Running 'parallel -j0 -N 9 --pipe parallel -j0' or
|
par_k parallel: Warning: Running 'parallel -j0 -N 8 --pipe parallel -j0' or
|
||||||
par_k parallel: Warning: raising 'ulimit -n' or 'nofile' in /etc/security/limits.conf
|
par_k parallel: Warning: raising 'ulimit -n' or 'nofile' in /etc/security/limits.conf
|
||||||
par_k parallel: Warning: or /proc/sys/fs/file-max may help.
|
par_k parallel: Warning: or /proc/sys/fs/file-max may help.
|
||||||
par_k parallel: Warning: No more file handles.
|
|
||||||
par_k parallel: Warning: Raising ulimit -n or /etc/security/limits.conf may help.
|
|
||||||
par_k begin
|
par_k begin
|
||||||
par_k 1
|
par_k 1
|
||||||
par_k 2
|
par_k 2
|
||||||
|
@ -487,19 +488,6 @@ par_maxlinelen_X_I Chars per line (817788/13): 62906
|
||||||
par_maxlinelen_m_I ### Test max line length -m -I
|
par_maxlinelen_m_I ### Test max line length -m -I
|
||||||
par_maxlinelen_m_I d10d5c84fc4716b21d90afa92cf44d73 -
|
par_maxlinelen_m_I d10d5c84fc4716b21d90afa92cf44d73 -
|
||||||
par_maxlinelen_m_I Chars per line (697810/11): 63437
|
par_maxlinelen_m_I Chars per line (697810/11): 63437
|
||||||
par_memleak ### Test memory consumption stays (almost) the same for 30 and 300 jobs
|
|
||||||
par_memleak should give 1 == true
|
|
||||||
par_memleak Memory use should not depend very much on the total number of jobs run\n
|
|
||||||
par_memleak Test if memory consumption(300 jobs) < memory consumption(30 jobs) * 110%
|
|
||||||
par_memleak 1
|
|
||||||
par_pipe_tee bug #45479: --pipe/--pipepart --tee
|
|
||||||
par_pipe_tee --pipe --tee
|
|
||||||
par_pipe_tee 3221225472
|
|
||||||
par_pipepart_spawn ### bug #46214: Using --pipepart doesnt spawn multiple jobs in version 20150922
|
|
||||||
par_pipepart_spawn 1:local / 8 / 999
|
|
||||||
par_pipepart_tee bug #45479: --pipe/--pipepart --tee
|
|
||||||
par_pipepart_tee --pipepart --tee
|
|
||||||
par_pipepart_tee 3221225472
|
|
||||||
par_plus_dyn_repl Dynamic replacement strings defined by --plus
|
par_plus_dyn_repl Dynamic replacement strings defined by --plus
|
||||||
par_plus_dyn_repl myval
|
par_plus_dyn_repl myval
|
||||||
par_plus_dyn_repl myval
|
par_plus_dyn_repl myval
|
||||||
|
@ -568,10 +556,10 @@ par_results_compress 0
|
||||||
par_results_compress 1
|
par_results_compress 1
|
||||||
par_results_csv bug #: --results csv
|
par_results_csv bug #: --results csv
|
||||||
par_results_csv --header : --tag --lb --files --compress Seq,Host,Starttime,JobRuntime,Send,Receive,Exitval,Signal,Command,H2,H1,Stdout,Stderr
|
par_results_csv --header : --tag --lb --files --compress Seq,Host,Starttime,JobRuntime,Send,Receive,Exitval,Signal,Command,H2,H1,Stdout,Stderr
|
||||||
par_results_csv --header : --tag --lb --files --compress 1,:,999.999,999.999,0,15,0,0,"echo 22 11",22,11,"22 11 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
par_results_csv --header : --tag --lb --files --compress 1,:,999.999,999.999,0,31,0,0,"echo 22 11",22,11,"22 11 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
||||||
par_results_csv --header : --tag --lb --files --compress 2,:,999.999,999.999,0,15,0,0,"echo 22 12",22,12,"22 12 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
par_results_csv --header : --tag --lb --files --compress 2,:,999.999,999.999,0,31,0,0,"echo 22 12",22,12,"22 12 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
||||||
par_results_csv --header : --tag --lb --files --compress 3,:,999.999,999.999,0,15,0,0,"echo 23 11",23,11,"23 11 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
par_results_csv --header : --tag --lb --files --compress 3,:,999.999,999.999,0,31,0,0,"echo 23 11",23,11,"23 11 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
||||||
par_results_csv --header : --tag --lb --files --compress 4,:,999.999,999.999,0,15,0,0,"echo 23 12",23,12,"23 12 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
par_results_csv --header : --tag --lb --files --compress 4,:,999.999,999.999,0,31,0,0,"echo 23 12",23,12,"23 12 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
||||||
par_results_csv --header : --tag --lb --files Seq,Host,Starttime,JobRuntime,Send,Receive,Exitval,Signal,Command,H2,H1,Stdout,Stderr
|
par_results_csv --header : --tag --lb --files Seq,Host,Starttime,JobRuntime,Send,Receive,Exitval,Signal,Command,H2,H1,Stdout,Stderr
|
||||||
par_results_csv --header : --tag --lb --files 1,:,999.999,999.999,0,6,0,0,"echo 22 11",22,11,"22 11 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
par_results_csv --header : --tag --lb --files 1,:,999.999,999.999,0,6,0,0,"echo 22 11",22,11,"22 11 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
||||||
par_results_csv --header : --tag --lb --files 2,:,999.999,999.999,0,6,0,0,"echo 22 12",22,12,"22 12 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
par_results_csv --header : --tag --lb --files 2,:,999.999,999.999,0,6,0,0,"echo 22 12",22,12,"22 12 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
||||||
|
@ -596,10 +584,10 @@ par_results_csv --header : --tag --lb ",
|
||||||
par_results_csv --header : --tag --lb 4,:,999.999,999.999,0,6,0,0,"echo 23 12",23,12,"23 12 23 12
|
par_results_csv --header : --tag --lb 4,:,999.999,999.999,0,6,0,0,"echo 23 12",23,12,"23 12 23 12
|
||||||
par_results_csv --header : --tag --lb ",
|
par_results_csv --header : --tag --lb ",
|
||||||
par_results_csv --header : --tag --files --compress Seq,Host,Starttime,JobRuntime,Send,Receive,Exitval,Signal,Command,H2,H1,Stdout,Stderr
|
par_results_csv --header : --tag --files --compress Seq,Host,Starttime,JobRuntime,Send,Receive,Exitval,Signal,Command,H2,H1,Stdout,Stderr
|
||||||
par_results_csv --header : --tag --files --compress 1,:,999.999,999.999,0,15,0,0,"echo 22 11",22,11,"22 11 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
par_results_csv --header : --tag --files --compress 1,:,999.999,999.999,0,31,0,0,"echo 22 11",22,11,"22 11 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
||||||
par_results_csv --header : --tag --files --compress 2,:,999.999,999.999,0,15,0,0,"echo 22 12",22,12,"22 12 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
par_results_csv --header : --tag --files --compress 2,:,999.999,999.999,0,31,0,0,"echo 22 12",22,12,"22 12 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
||||||
par_results_csv --header : --tag --files --compress 3,:,999.999,999.999,0,15,0,0,"echo 23 11",23,11,"23 11 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
par_results_csv --header : --tag --files --compress 3,:,999.999,999.999,0,31,0,0,"echo 23 11",23,11,"23 11 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
||||||
par_results_csv --header : --tag --files --compress 4,:,999.999,999.999,0,15,0,0,"echo 23 12",23,12,"23 12 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
par_results_csv --header : --tag --files --compress 4,:,999.999,999.999,0,31,0,0,"echo 23 12",23,12,"23 12 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
||||||
par_results_csv --header : --tag --files Seq,Host,Starttime,JobRuntime,Send,Receive,Exitval,Signal,Command,H2,H1,Stdout,Stderr
|
par_results_csv --header : --tag --files Seq,Host,Starttime,JobRuntime,Send,Receive,Exitval,Signal,Command,H2,H1,Stdout,Stderr
|
||||||
par_results_csv --header : --tag --files 1,:,999.999,999.999,0,6,0,0,"echo 22 11",22,11,"22 11 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
par_results_csv --header : --tag --files 1,:,999.999,999.999,0,6,0,0,"echo 22 11",22,11,"22 11 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
||||||
par_results_csv --header : --tag --files 2,:,999.999,999.999,0,6,0,0,"echo 22 12",22,12,"22 12 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
par_results_csv --header : --tag --files 2,:,999.999,999.999,0,6,0,0,"echo 22 12",22,12,"22 12 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
||||||
|
@ -624,10 +612,10 @@ par_results_csv --header : --tag ",
|
||||||
par_results_csv --header : --tag 4,:,999.999,999.999,0,6,0,0,"echo 23 12",23,12,"23 12 23 12
|
par_results_csv --header : --tag 4,:,999.999,999.999,0,6,0,0,"echo 23 12",23,12,"23 12 23 12
|
||||||
par_results_csv --header : --tag ",
|
par_results_csv --header : --tag ",
|
||||||
par_results_csv --header : --lb --files --compress Seq,Host,Starttime,JobRuntime,Send,Receive,Exitval,Signal,Command,H2,H1,Stdout,Stderr
|
par_results_csv --header : --lb --files --compress Seq,Host,Starttime,JobRuntime,Send,Receive,Exitval,Signal,Command,H2,H1,Stdout,Stderr
|
||||||
par_results_csv --header : --lb --files --compress 1,:,999.999,999.999,0,15,0,0,"echo 22 11",22,11,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
par_results_csv --header : --lb --files --compress 1,:,999.999,999.999,0,31,0,0,"echo 22 11",22,11,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
||||||
par_results_csv --header : --lb --files --compress 2,:,999.999,999.999,0,15,0,0,"echo 22 12",22,12,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
par_results_csv --header : --lb --files --compress 2,:,999.999,999.999,0,31,0,0,"echo 22 12",22,12,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
||||||
par_results_csv --header : --lb --files --compress 3,:,999.999,999.999,0,15,0,0,"echo 23 11",23,11,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
par_results_csv --header : --lb --files --compress 3,:,999.999,999.999,0,31,0,0,"echo 23 11",23,11,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
||||||
par_results_csv --header : --lb --files --compress 4,:,999.999,999.999,0,15,0,0,"echo 23 12",23,12,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
par_results_csv --header : --lb --files --compress 4,:,999.999,999.999,0,31,0,0,"echo 23 12",23,12,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
||||||
par_results_csv --header : --lb --files Seq,Host,Starttime,JobRuntime,Send,Receive,Exitval,Signal,Command,H2,H1,Stdout,Stderr
|
par_results_csv --header : --lb --files Seq,Host,Starttime,JobRuntime,Send,Receive,Exitval,Signal,Command,H2,H1,Stdout,Stderr
|
||||||
par_results_csv --header : --lb --files 1,:,999.999,999.999,0,6,0,0,"echo 22 11",22,11,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
par_results_csv --header : --lb --files 1,:,999.999,999.999,0,6,0,0,"echo 22 11",22,11,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
||||||
par_results_csv --header : --lb --files 2,:,999.999,999.999,0,6,0,0,"echo 22 12",22,12,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
par_results_csv --header : --lb --files 2,:,999.999,999.999,0,6,0,0,"echo 22 12",22,12,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
||||||
|
@ -652,10 +640,10 @@ par_results_csv --header : --lb ",
|
||||||
par_results_csv --header : --lb 4,:,999.999,999.999,0,6,0,0,"echo 23 12",23,12,"23 12
|
par_results_csv --header : --lb 4,:,999.999,999.999,0,6,0,0,"echo 23 12",23,12,"23 12
|
||||||
par_results_csv --header : --lb ",
|
par_results_csv --header : --lb ",
|
||||||
par_results_csv --header : --files --compress Seq,Host,Starttime,JobRuntime,Send,Receive,Exitval,Signal,Command,H2,H1,Stdout,Stderr
|
par_results_csv --header : --files --compress Seq,Host,Starttime,JobRuntime,Send,Receive,Exitval,Signal,Command,H2,H1,Stdout,Stderr
|
||||||
par_results_csv --header : --files --compress 1,:,999.999,999.999,0,15,0,0,"echo 22 11",22,11,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
par_results_csv --header : --files --compress 1,:,999.999,999.999,0,31,0,0,"echo 22 11",22,11,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
||||||
par_results_csv --header : --files --compress 2,:,999.999,999.999,0,15,0,0,"echo 22 12",22,12,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
par_results_csv --header : --files --compress 2,:,999.999,999.999,0,31,0,0,"echo 22 12",22,12,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
||||||
par_results_csv --header : --files --compress 3,:,999.999,999.999,0,15,0,0,"echo 23 11",23,11,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
par_results_csv --header : --files --compress 3,:,999.999,999.999,0,31,0,0,"echo 23 11",23,11,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
||||||
par_results_csv --header : --files --compress 4,:,999.999,999.999,0,15,0,0,"echo 23 12",23,12,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
par_results_csv --header : --files --compress 4,:,999.999,999.999,0,31,0,0,"echo 23 12",23,12,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
||||||
par_results_csv --header : --files Seq,Host,Starttime,JobRuntime,Send,Receive,Exitval,Signal,Command,H2,H1,Stdout,Stderr
|
par_results_csv --header : --files Seq,Host,Starttime,JobRuntime,Send,Receive,Exitval,Signal,Command,H2,H1,Stdout,Stderr
|
||||||
par_results_csv --header : --files 1,:,999.999,999.999,0,6,0,0,"echo 22 11",22,11,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
par_results_csv --header : --files 1,:,999.999,999.999,0,6,0,0,"echo 22 11",22,11,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
||||||
par_results_csv --header : --files 2,:,999.999,999.999,0,6,0,0,"echo 22 12",22,12,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
par_results_csv --header : --files 2,:,999.999,999.999,0,6,0,0,"echo 22 12",22,12,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
||||||
|
@ -680,15 +668,15 @@ par_results_csv --header : ",
|
||||||
par_results_csv --header : 4,:,999.999,999.999,0,6,0,0,"echo 23 12",23,12,"23 12
|
par_results_csv --header : 4,:,999.999,999.999,0,6,0,0,"echo 23 12",23,12,"23 12
|
||||||
par_results_csv --header : ",
|
par_results_csv --header : ",
|
||||||
par_results_csv --tag --lb --files --compress Seq,Host,Starttime,JobRuntime,Send,Receive,Exitval,Signal,Command,V1,V2,Stdout,Stderr
|
par_results_csv --tag --lb --files --compress Seq,Host,Starttime,JobRuntime,Send,Receive,Exitval,Signal,Command,V1,V2,Stdout,Stderr
|
||||||
par_results_csv --tag --lb --files --compress 1,:,999.999,999.999,0,15,0,0,"echo H2 H1",H2,H1,"H2 H1 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
par_results_csv --tag --lb --files --compress 1,:,999.999,999.999,0,31,0,0,"echo H2 H1",H2,H1,"H2 H1 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
||||||
par_results_csv --tag --lb --files --compress 2,:,999.999,999.999,0,15,0,0,"echo H2 11",H2,11,"H2 11 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
par_results_csv --tag --lb --files --compress 2,:,999.999,999.999,0,31,0,0,"echo H2 11",H2,11,"H2 11 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
||||||
par_results_csv --tag --lb --files --compress 3,:,999.999,999.999,0,15,0,0,"echo H2 12",H2,12,"H2 12 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
par_results_csv --tag --lb --files --compress 3,:,999.999,999.999,0,31,0,0,"echo H2 12",H2,12,"H2 12 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
||||||
par_results_csv --tag --lb --files --compress 4,:,999.999,999.999,0,15,0,0,"echo 22 H1",22,H1,"22 H1 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
par_results_csv --tag --lb --files --compress 4,:,999.999,999.999,0,31,0,0,"echo 22 H1",22,H1,"22 H1 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
||||||
par_results_csv --tag --lb --files --compress 5,:,999.999,999.999,0,15,0,0,"echo 22 11",22,11,"22 11 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
par_results_csv --tag --lb --files --compress 5,:,999.999,999.999,0,31,0,0,"echo 22 11",22,11,"22 11 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
||||||
par_results_csv --tag --lb --files --compress 6,:,999.999,999.999,0,15,0,0,"echo 22 12",22,12,"22 12 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
par_results_csv --tag --lb --files --compress 6,:,999.999,999.999,0,31,0,0,"echo 22 12",22,12,"22 12 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
||||||
par_results_csv --tag --lb --files --compress 7,:,999.999,999.999,0,15,0,0,"echo 23 H1",23,H1,"23 H1 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
par_results_csv --tag --lb --files --compress 7,:,999.999,999.999,0,31,0,0,"echo 23 H1",23,H1,"23 H1 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
||||||
par_results_csv --tag --lb --files --compress 8,:,999.999,999.999,0,15,0,0,"echo 23 11",23,11,"23 11 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
par_results_csv --tag --lb --files --compress 8,:,999.999,999.999,0,31,0,0,"echo 23 11",23,11,"23 11 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
||||||
par_results_csv --tag --lb --files --compress 9,:,999.999,999.999,0,15,0,0,"echo 23 12",23,12,"23 12 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
par_results_csv --tag --lb --files --compress 9,:,999.999,999.999,0,31,0,0,"echo 23 12",23,12,"23 12 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
||||||
par_results_csv --tag --lb --files Seq,Host,Starttime,JobRuntime,Send,Receive,Exitval,Signal,Command,V1,V2,Stdout,Stderr
|
par_results_csv --tag --lb --files Seq,Host,Starttime,JobRuntime,Send,Receive,Exitval,Signal,Command,V1,V2,Stdout,Stderr
|
||||||
par_results_csv --tag --lb --files 1,:,999.999,999.999,0,6,0,0,"echo H2 H1",H2,H1,"H2 H1 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
par_results_csv --tag --lb --files 1,:,999.999,999.999,0,6,0,0,"echo H2 H1",H2,H1,"H2 H1 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
||||||
par_results_csv --tag --lb --files 2,:,999.999,999.999,0,6,0,0,"echo H2 11",H2,11,"H2 11 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
par_results_csv --tag --lb --files 2,:,999.999,999.999,0,6,0,0,"echo H2 11",H2,11,"H2 11 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
||||||
|
@ -738,15 +726,15 @@ par_results_csv --tag --lb ",
|
||||||
par_results_csv --tag --lb 9,:,999.999,999.999,0,6,0,0,"echo 23 12",23,12,"23 12 23 12
|
par_results_csv --tag --lb 9,:,999.999,999.999,0,6,0,0,"echo 23 12",23,12,"23 12 23 12
|
||||||
par_results_csv --tag --lb ",
|
par_results_csv --tag --lb ",
|
||||||
par_results_csv --tag --files --compress Seq,Host,Starttime,JobRuntime,Send,Receive,Exitval,Signal,Command,V1,V2,Stdout,Stderr
|
par_results_csv --tag --files --compress Seq,Host,Starttime,JobRuntime,Send,Receive,Exitval,Signal,Command,V1,V2,Stdout,Stderr
|
||||||
par_results_csv --tag --files --compress 1,:,999.999,999.999,0,15,0,0,"echo H2 H1",H2,H1,"H2 H1 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
par_results_csv --tag --files --compress 1,:,999.999,999.999,0,31,0,0,"echo H2 H1",H2,H1,"H2 H1 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
||||||
par_results_csv --tag --files --compress 2,:,999.999,999.999,0,15,0,0,"echo H2 11",H2,11,"H2 11 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
par_results_csv --tag --files --compress 2,:,999.999,999.999,0,31,0,0,"echo H2 11",H2,11,"H2 11 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
||||||
par_results_csv --tag --files --compress 3,:,999.999,999.999,0,15,0,0,"echo H2 12",H2,12,"H2 12 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
par_results_csv --tag --files --compress 3,:,999.999,999.999,0,31,0,0,"echo H2 12",H2,12,"H2 12 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
||||||
par_results_csv --tag --files --compress 4,:,999.999,999.999,0,15,0,0,"echo 22 H1",22,H1,"22 H1 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
par_results_csv --tag --files --compress 4,:,999.999,999.999,0,31,0,0,"echo 22 H1",22,H1,"22 H1 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
||||||
par_results_csv --tag --files --compress 5,:,999.999,999.999,0,15,0,0,"echo 22 11",22,11,"22 11 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
par_results_csv --tag --files --compress 5,:,999.999,999.999,0,31,0,0,"echo 22 11",22,11,"22 11 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
||||||
par_results_csv --tag --files --compress 6,:,999.999,999.999,0,15,0,0,"echo 22 12",22,12,"22 12 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
par_results_csv --tag --files --compress 6,:,999.999,999.999,0,31,0,0,"echo 22 12",22,12,"22 12 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
||||||
par_results_csv --tag --files --compress 7,:,999.999,999.999,0,15,0,0,"echo 23 H1",23,H1,"23 H1 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
par_results_csv --tag --files --compress 7,:,999.999,999.999,0,31,0,0,"echo 23 H1",23,H1,"23 H1 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
||||||
par_results_csv --tag --files --compress 8,:,999.999,999.999,0,15,0,0,"echo 23 11",23,11,"23 11 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
par_results_csv --tag --files --compress 8,:,999.999,999.999,0,31,0,0,"echo 23 11",23,11,"23 11 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
||||||
par_results_csv --tag --files --compress 9,:,999.999,999.999,0,15,0,0,"echo 23 12",23,12,"23 12 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
par_results_csv --tag --files --compress 9,:,999.999,999.999,0,31,0,0,"echo 23 12",23,12,"23 12 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
||||||
par_results_csv --tag --files Seq,Host,Starttime,JobRuntime,Send,Receive,Exitval,Signal,Command,V1,V2,Stdout,Stderr
|
par_results_csv --tag --files Seq,Host,Starttime,JobRuntime,Send,Receive,Exitval,Signal,Command,V1,V2,Stdout,Stderr
|
||||||
par_results_csv --tag --files 1,:,999.999,999.999,0,6,0,0,"echo H2 H1",H2,H1,"H2 H1 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
par_results_csv --tag --files 1,:,999.999,999.999,0,6,0,0,"echo H2 H1",H2,H1,"H2 H1 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
||||||
par_results_csv --tag --files 2,:,999.999,999.999,0,6,0,0,"echo H2 11",H2,11,"H2 11 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
par_results_csv --tag --files 2,:,999.999,999.999,0,6,0,0,"echo H2 11",H2,11,"H2 11 /tmp/parallel-local-10s-tmpdir/tmpfile",
|
||||||
|
@ -796,15 +784,15 @@ par_results_csv --tag ",
|
||||||
par_results_csv --tag 9,:,999.999,999.999,0,6,0,0,"echo 23 12",23,12,"23 12 23 12
|
par_results_csv --tag 9,:,999.999,999.999,0,6,0,0,"echo 23 12",23,12,"23 12 23 12
|
||||||
par_results_csv --tag ",
|
par_results_csv --tag ",
|
||||||
par_results_csv --lb --files --compress Seq,Host,Starttime,JobRuntime,Send,Receive,Exitval,Signal,Command,V1,V2,Stdout,Stderr
|
par_results_csv --lb --files --compress Seq,Host,Starttime,JobRuntime,Send,Receive,Exitval,Signal,Command,V1,V2,Stdout,Stderr
|
||||||
par_results_csv --lb --files --compress 1,:,999.999,999.999,0,15,0,0,"echo H2 H1",H2,H1,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
par_results_csv --lb --files --compress 1,:,999.999,999.999,0,31,0,0,"echo H2 H1",H2,H1,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
||||||
par_results_csv --lb --files --compress 2,:,999.999,999.999,0,15,0,0,"echo H2 11",H2,11,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
par_results_csv --lb --files --compress 2,:,999.999,999.999,0,31,0,0,"echo H2 11",H2,11,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
||||||
par_results_csv --lb --files --compress 3,:,999.999,999.999,0,15,0,0,"echo H2 12",H2,12,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
par_results_csv --lb --files --compress 3,:,999.999,999.999,0,31,0,0,"echo H2 12",H2,12,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
||||||
par_results_csv --lb --files --compress 4,:,999.999,999.999,0,15,0,0,"echo 22 H1",22,H1,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
par_results_csv --lb --files --compress 4,:,999.999,999.999,0,31,0,0,"echo 22 H1",22,H1,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
||||||
par_results_csv --lb --files --compress 5,:,999.999,999.999,0,15,0,0,"echo 22 11",22,11,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
par_results_csv --lb --files --compress 5,:,999.999,999.999,0,31,0,0,"echo 22 11",22,11,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
||||||
par_results_csv --lb --files --compress 6,:,999.999,999.999,0,15,0,0,"echo 22 12",22,12,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
par_results_csv --lb --files --compress 6,:,999.999,999.999,0,31,0,0,"echo 22 12",22,12,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
||||||
par_results_csv --lb --files --compress 7,:,999.999,999.999,0,15,0,0,"echo 23 H1",23,H1,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
par_results_csv --lb --files --compress 7,:,999.999,999.999,0,31,0,0,"echo 23 H1",23,H1,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
||||||
par_results_csv --lb --files --compress 8,:,999.999,999.999,0,15,0,0,"echo 23 11",23,11,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
par_results_csv --lb --files --compress 8,:,999.999,999.999,0,31,0,0,"echo 23 11",23,11,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
||||||
par_results_csv --lb --files --compress 9,:,999.999,999.999,0,15,0,0,"echo 23 12",23,12,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
par_results_csv --lb --files --compress 9,:,999.999,999.999,0,31,0,0,"echo 23 12",23,12,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
||||||
par_results_csv --lb --files Seq,Host,Starttime,JobRuntime,Send,Receive,Exitval,Signal,Command,V1,V2,Stdout,Stderr
|
par_results_csv --lb --files Seq,Host,Starttime,JobRuntime,Send,Receive,Exitval,Signal,Command,V1,V2,Stdout,Stderr
|
||||||
par_results_csv --lb --files 1,:,999.999,999.999,0,6,0,0,"echo H2 H1",H2,H1,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
par_results_csv --lb --files 1,:,999.999,999.999,0,6,0,0,"echo H2 H1",H2,H1,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
||||||
par_results_csv --lb --files 2,:,999.999,999.999,0,6,0,0,"echo H2 11",H2,11,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
par_results_csv --lb --files 2,:,999.999,999.999,0,6,0,0,"echo H2 11",H2,11,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
||||||
|
@ -854,15 +842,15 @@ par_results_csv --lb ",
|
||||||
par_results_csv --lb 9,:,999.999,999.999,0,6,0,0,"echo 23 12",23,12,"23 12
|
par_results_csv --lb 9,:,999.999,999.999,0,6,0,0,"echo 23 12",23,12,"23 12
|
||||||
par_results_csv --lb ",
|
par_results_csv --lb ",
|
||||||
par_results_csv --files --compress Seq,Host,Starttime,JobRuntime,Send,Receive,Exitval,Signal,Command,V1,V2,Stdout,Stderr
|
par_results_csv --files --compress Seq,Host,Starttime,JobRuntime,Send,Receive,Exitval,Signal,Command,V1,V2,Stdout,Stderr
|
||||||
par_results_csv --files --compress 1,:,999.999,999.999,0,15,0,0,"echo H2 H1",H2,H1,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
par_results_csv --files --compress 1,:,999.999,999.999,0,31,0,0,"echo H2 H1",H2,H1,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
||||||
par_results_csv --files --compress 2,:,999.999,999.999,0,15,0,0,"echo H2 11",H2,11,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
par_results_csv --files --compress 2,:,999.999,999.999,0,31,0,0,"echo H2 11",H2,11,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
||||||
par_results_csv --files --compress 3,:,999.999,999.999,0,15,0,0,"echo H2 12",H2,12,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
par_results_csv --files --compress 3,:,999.999,999.999,0,31,0,0,"echo H2 12",H2,12,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
||||||
par_results_csv --files --compress 4,:,999.999,999.999,0,15,0,0,"echo 22 H1",22,H1,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
par_results_csv --files --compress 4,:,999.999,999.999,0,31,0,0,"echo 22 H1",22,H1,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
||||||
par_results_csv --files --compress 5,:,999.999,999.999,0,15,0,0,"echo 22 11",22,11,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
par_results_csv --files --compress 5,:,999.999,999.999,0,31,0,0,"echo 22 11",22,11,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
||||||
par_results_csv --files --compress 6,:,999.999,999.999,0,15,0,0,"echo 22 12",22,12,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
par_results_csv --files --compress 6,:,999.999,999.999,0,31,0,0,"echo 22 12",22,12,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
||||||
par_results_csv --files --compress 7,:,999.999,999.999,0,15,0,0,"echo 23 H1",23,H1,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
par_results_csv --files --compress 7,:,999.999,999.999,0,31,0,0,"echo 23 H1",23,H1,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
||||||
par_results_csv --files --compress 8,:,999.999,999.999,0,15,0,0,"echo 23 11",23,11,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
par_results_csv --files --compress 8,:,999.999,999.999,0,31,0,0,"echo 23 11",23,11,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
||||||
par_results_csv --files --compress 9,:,999.999,999.999,0,15,0,0,"echo 23 12",23,12,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
par_results_csv --files --compress 9,:,999.999,999.999,0,31,0,0,"echo 23 12",23,12,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
||||||
par_results_csv --files Seq,Host,Starttime,JobRuntime,Send,Receive,Exitval,Signal,Command,V1,V2,Stdout,Stderr
|
par_results_csv --files Seq,Host,Starttime,JobRuntime,Send,Receive,Exitval,Signal,Command,V1,V2,Stdout,Stderr
|
||||||
par_results_csv --files 1,:,999.999,999.999,0,6,0,0,"echo H2 H1",H2,H1,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
par_results_csv --files 1,:,999.999,999.999,0,6,0,0,"echo H2 H1",H2,H1,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
||||||
par_results_csv --files 2,:,999.999,999.999,0,6,0,0,"echo H2 11",H2,11,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
par_results_csv --files 2,:,999.999,999.999,0,6,0,0,"echo H2 11",H2,11,/tmp/parallel-local-10s-tmpdir/tmpfile,
|
||||||
|
|
|
@ -743,11 +743,3 @@ par_result_replace /tmp/par__49983-baz C
|
||||||
par_result_replace /tmp/par__49983-baz C/seq
|
par_result_replace /tmp/par__49983-baz C/seq
|
||||||
par_result_replace /tmp/par__49983-baz C/stderr
|
par_result_replace /tmp/par__49983-baz C/stderr
|
||||||
par_result_replace /tmp/par__49983-baz C/stdout
|
par_result_replace /tmp/par__49983-baz C/stdout
|
||||||
par_sqlworker_hostname bug #50901: --sqlworker should use hostname in the joblog instead of :
|
|
||||||
par_sqlworker_hostname 1
|
|
||||||
par_sqlworker_hostname 2
|
|
||||||
par_sqlworker_hostname 3
|
|
||||||
par_sqlworker_hostname host
|
|
||||||
par_sqlworker_hostname aspire
|
|
||||||
par_sqlworker_hostname aspire
|
|
||||||
par_sqlworker_hostname aspire
|
|
||||||
|
|
|
@ -1,4 +1,6 @@
|
||||||
par_linebuffer_matters_compress ### (--linebuffer) --compress should give different output
|
par_linebuffer_matters_compress ### (--linebuffer) --compress should give different output
|
||||||
|
par_linebuffer_matters_compress environment: line 8: warning: command substitution: ignored null byte in input
|
||||||
|
par_linebuffer_matters_compress environment: line 11: warning: command substitution: ignored null byte in input
|
||||||
par_linebuffer_matters_compress OK: --linebuffer makes a difference
|
par_linebuffer_matters_compress OK: --linebuffer makes a difference
|
||||||
par_linebuffer_matters_compress_tag ### (--linebuffer) --compress --tag should give different output
|
par_linebuffer_matters_compress_tag ### (--linebuffer) --compress --tag should give different output
|
||||||
par_linebuffer_matters_compress_tag OK: --linebuffer makes a difference
|
par_linebuffer_matters_compress_tag OK: --linebuffer makes a difference
|
||||||
|
|
|
@ -82,6 +82,14 @@ par_slow_args_generation ### Test slow arguments generation - https://savannah.g
|
||||||
par_slow_args_generation 1
|
par_slow_args_generation 1
|
||||||
par_slow_args_generation 2
|
par_slow_args_generation 2
|
||||||
par_slow_args_generation 3
|
par_slow_args_generation 3
|
||||||
|
par_sqlworker_hostname bug #50901: --sqlworker should use hostname in the joblog instead of :
|
||||||
|
par_sqlworker_hostname 1
|
||||||
|
par_sqlworker_hostname 2
|
||||||
|
par_sqlworker_hostname 3
|
||||||
|
par_sqlworker_hostname host
|
||||||
|
par_sqlworker_hostname <hostname>
|
||||||
|
par_sqlworker_hostname <hostname>
|
||||||
|
par_sqlworker_hostname <hostname>
|
||||||
par_wrong_slot_rpl_resume ### bug #47644: Wrong slot number replacement when resuming
|
par_wrong_slot_rpl_resume ### bug #47644: Wrong slot number replacement when resuming
|
||||||
par_wrong_slot_rpl_resume 1 0
|
par_wrong_slot_rpl_resume 1 0
|
||||||
par_wrong_slot_rpl_resume 2 1
|
par_wrong_slot_rpl_resume 2 1
|
||||||
|
|
|
@ -1,3 +1,82 @@
|
||||||
|
par_distribute_input_by_ability ### bug #48290: round-robin does not distribute data based on business
|
||||||
|
par_distribute_input_by_ability ### Distribute input to jobs that are ready
|
||||||
|
par_distribute_input_by_ability Job-slot n is 50% slower than n+1, so the order should be 1..7
|
||||||
|
par_distribute_input_by_ability 1
|
||||||
|
par_distribute_input_by_ability 2
|
||||||
|
par_distribute_input_by_ability 3
|
||||||
|
par_distribute_input_by_ability 4
|
||||||
|
par_distribute_input_by_ability 5
|
||||||
|
par_distribute_input_by_ability 6
|
||||||
|
par_distribute_input_by_ability 7
|
||||||
|
par_hostgroup ### --hostgroup force ncpu
|
||||||
|
par_hostgroup parallel
|
||||||
|
par_hostgroup parallel
|
||||||
|
par_hostgroup tange
|
||||||
|
par_hostgroup tange
|
||||||
|
par_hostgroup tange
|
||||||
|
par_hostgroup tange
|
||||||
|
par_hostgroup tange
|
||||||
|
par_hostgroup tange
|
||||||
|
par_hostgroup ### --hostgroup two group arg
|
||||||
|
par_hostgroup parallel
|
||||||
|
par_hostgroup parallel
|
||||||
|
par_hostgroup tange
|
||||||
|
par_hostgroup tange
|
||||||
|
par_hostgroup tange
|
||||||
|
par_hostgroup tange
|
||||||
|
par_hostgroup tange
|
||||||
|
par_hostgroup tange
|
||||||
|
par_hostgroup ### --hostgroup one group arg
|
||||||
|
par_hostgroup tange
|
||||||
|
par_hostgroup tange
|
||||||
|
par_hostgroup tange
|
||||||
|
par_hostgroup tange
|
||||||
|
par_hostgroup tange
|
||||||
|
par_hostgroup tange
|
||||||
|
par_hostgroup tange
|
||||||
|
par_hostgroup tange
|
||||||
|
par_hostgroup ### --hostgroup multiple group arg + unused group
|
||||||
|
par_hostgroup parallel
|
||||||
|
par_hostgroup parallel
|
||||||
|
par_hostgroup tange
|
||||||
|
par_hostgroup tange
|
||||||
|
par_hostgroup tange
|
||||||
|
par_hostgroup tange
|
||||||
|
par_hostgroup tange
|
||||||
|
par_hostgroup tange
|
||||||
|
par_hostgroup ### --hostgroup two groups @
|
||||||
|
par_hostgroup parallel parallel
|
||||||
|
par_hostgroup parallel parallel
|
||||||
|
par_hostgroup tange tange
|
||||||
|
par_hostgroup tange tange
|
||||||
|
par_hostgroup ### --hostgroup
|
||||||
|
par_hostgroup no_group
|
||||||
|
par_hostgroup explicit_group
|
||||||
|
par_hostgroup implicit_group
|
||||||
|
par_hostgroup ### --hostgroup --sshlogin with @
|
||||||
|
par_hostgroup no_group
|
||||||
|
par_hostgroup implicit_group
|
||||||
|
par_hostgroup ### --hostgroup -S @group
|
||||||
|
par_hostgroup tange
|
||||||
|
par_hostgroup tange
|
||||||
|
par_hostgroup tange
|
||||||
|
par_hostgroup tcsh
|
||||||
|
par_hostgroup tcsh
|
||||||
|
par_hostgroup tcsh
|
||||||
|
par_hostgroup ### --hostgroup -S @group1 -Sgrp2
|
||||||
|
par_hostgroup parallel
|
||||||
|
par_hostgroup parallel
|
||||||
|
par_hostgroup tange
|
||||||
|
par_hostgroup tange
|
||||||
|
par_hostgroup tcsh
|
||||||
|
par_hostgroup tcsh
|
||||||
|
par_hostgroup ### --hostgroup -S @group1+grp2
|
||||||
|
par_hostgroup parallel
|
||||||
|
par_hostgroup parallel
|
||||||
|
par_hostgroup tange
|
||||||
|
par_hostgroup tange
|
||||||
|
par_hostgroup tcsh
|
||||||
|
par_hostgroup tcsh
|
||||||
par_print_before_halt_on_error ### What is printed before the jobs are killed
|
par_print_before_halt_on_error ### What is printed before the jobs are killed
|
||||||
par_print_before_halt_on_error -2 exit code 0
|
par_print_before_halt_on_error -2 exit code 0
|
||||||
par_print_before_halt_on_error -2 0.1 0.1
|
par_print_before_halt_on_error -2 0.1 0.1
|
||||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -1,6 +1,6 @@
|
||||||
echo '### Test --load remote'
|
echo '### Test --load remote'
|
||||||
### Test --load remote
|
### Test --load remote
|
||||||
ssh parallel@lo 'seq 10 | parallel --nice 19 --timeout 15 -j0 -N0 burnP6' & sleep 1; stdout /usr/bin/time -f %e parallel -S parallel@lo --load 10 sleep ::: 1 | perl -ne '$_ > 10 and print "OK\n"'
|
ssh parallel@lo 'seq 10 | parallel --nice 19 --timeout 15 -j0 -qN0 perl -e while\(1\)\{\ \}' & sleep 1; stdout /usr/bin/time -f %e parallel -S parallel@lo --load 10 sleep ::: 1 | perl -ne '$_ > 10 and print "OK\n"'
|
||||||
OK
|
OK
|
||||||
echo '**'
|
echo '**'
|
||||||
**
|
**
|
||||||
|
|
|
@ -1,92 +1,3 @@
|
||||||
echo '### --hostgroup force ncpu'
|
|
||||||
### --hostgroup force ncpu
|
|
||||||
parallel --delay 0.1 --hgrp -S @g1/1/parallel@lo -S @g2/3/lo whoami\;sleep 0.4{} ::: {1..8} | sort
|
|
||||||
parallel
|
|
||||||
parallel
|
|
||||||
tange
|
|
||||||
tange
|
|
||||||
tange
|
|
||||||
tange
|
|
||||||
tange
|
|
||||||
tange
|
|
||||||
echo '### --hostgroup two group arg'
|
|
||||||
### --hostgroup two group arg
|
|
||||||
parallel -k --sshdelay 0.1 --hgrp -S @g1/1/parallel@lo -S @g2/3/lo whoami\;sleep 0.3{} ::: {1..8}@g1+g2 | sort
|
|
||||||
parallel
|
|
||||||
parallel
|
|
||||||
tange
|
|
||||||
tange
|
|
||||||
tange
|
|
||||||
tange
|
|
||||||
tange
|
|
||||||
tange
|
|
||||||
echo '### --hostgroup one group arg'
|
|
||||||
### --hostgroup one group arg
|
|
||||||
parallel --delay 0.2 --hgrp -S @g1/1/parallel@lo -S @g2/3/lo whoami\;sleep 0.4{} ::: {1..8}@g2
|
|
||||||
tange
|
|
||||||
tange
|
|
||||||
tange
|
|
||||||
tange
|
|
||||||
tange
|
|
||||||
tange
|
|
||||||
tange
|
|
||||||
tange
|
|
||||||
echo '### --hostgroup multiple group arg + unused group'
|
|
||||||
### --hostgroup multiple group arg + unused group
|
|
||||||
parallel --delay 0.2 --hgrp -S @g1/1/parallel@lo -S @g1/3/lo -S @g3/100/tcsh@lo whoami\;sleep 0.8{} ::: {1..8}@g1+g2 | sort
|
|
||||||
parallel
|
|
||||||
parallel
|
|
||||||
tange
|
|
||||||
tange
|
|
||||||
tange
|
|
||||||
tange
|
|
||||||
tange
|
|
||||||
tange
|
|
||||||
echo '### --hostgroup two groups @'
|
|
||||||
### --hostgroup two groups @
|
|
||||||
parallel -k --hgrp -S @g1/parallel@lo -S @g2/lo --tag whoami\;echo ::: parallel@g1 tange@g2
|
|
||||||
parallel parallel
|
|
||||||
parallel parallel
|
|
||||||
tange tange
|
|
||||||
tange tange
|
|
||||||
echo '### --hostgroup'
|
|
||||||
### --hostgroup
|
|
||||||
parallel -k --hostgroup -S @grp1/lo echo ::: no_group explicit_group@grp1 implicit_group@lo
|
|
||||||
no_group
|
|
||||||
explicit_group
|
|
||||||
implicit_group
|
|
||||||
echo '### --hostgroup --sshlogin with @'
|
|
||||||
### --hostgroup --sshlogin with @
|
|
||||||
parallel -k --hostgroups -S parallel@lo echo ::: no_group implicit_group@parallel@lo
|
|
||||||
no_group
|
|
||||||
implicit_group
|
|
||||||
echo '### --hostgroup -S @group'
|
|
||||||
### --hostgroup -S @group
|
|
||||||
parallel -S @g1/ -S @g1/1/tcsh@lo -S @g1/1/localhost -S @g2/1/parallel@lo whoami\;true ::: {1..6} | sort
|
|
||||||
tange
|
|
||||||
tange
|
|
||||||
tange
|
|
||||||
tcsh
|
|
||||||
tcsh
|
|
||||||
tcsh
|
|
||||||
echo '### --hostgroup -S @group1 -Sgrp2'
|
|
||||||
### --hostgroup -S @group1 -Sgrp2
|
|
||||||
parallel -S @g1/ -S @g2 -S @g1/1/tcsh@lo -S @g1/1/localhost -S @g2/1/parallel@lo whoami\;true ::: {1..6} | sort
|
|
||||||
parallel
|
|
||||||
parallel
|
|
||||||
tange
|
|
||||||
tange
|
|
||||||
tcsh
|
|
||||||
tcsh
|
|
||||||
echo '### --hostgroup -S @group1+grp2'
|
|
||||||
### --hostgroup -S @group1+grp2
|
|
||||||
parallel -S @g1+g2 -S @g1/1/tcsh@lo -S @g1/1/localhost -S @g2/1/parallel@lo whoami\;true ::: {1..6} | sort
|
|
||||||
parallel
|
|
||||||
parallel
|
|
||||||
tange
|
|
||||||
tange
|
|
||||||
tcsh
|
|
||||||
tcsh
|
|
||||||
echo '### trailing space in sshlogin'
|
echo '### trailing space in sshlogin'
|
||||||
### trailing space in sshlogin
|
### trailing space in sshlogin
|
||||||
echo 'sshlogin trailing space' | parallel --sshlogin "ssh -l parallel localhost " echo
|
echo 'sshlogin trailing space' | parallel --sshlogin "ssh -l parallel localhost " echo
|
||||||
|
|
|
@ -34,7 +34,7 @@ Environment variables are:
|
||||||
stderr
|
stderr
|
||||||
|
|
||||||
rsync: connection unexpectedly closed (0 bytes received so far) [sender]
|
rsync: connection unexpectedly closed (0 bytes received so far) [sender]
|
||||||
rsync error: error in rsync protocol data stream (code 12) at io.c(226) [sender=3.1.1]
|
rsync error: error in rsync protocol data stream (code 12) at io.c(235) [sender=3.1.2]
|
||||||
/usr/lib/autossh/autossh: invalid option -- '-'
|
/usr/lib/autossh/autossh: invalid option -- '-'
|
||||||
usage: autossh [-V] [-M monitor_port[:echo_port]] [-f] [SSH_OPTIONS]
|
usage: autossh [-V] [-M monitor_port[:echo_port]] [-f] [SSH_OPTIONS]
|
||||||
|
|
||||||
|
@ -66,7 +66,7 @@ Environment variables are:
|
||||||
stderr
|
stderr
|
||||||
|
|
||||||
rsync: connection unexpectedly closed (0 bytes received so far) [Receiver]
|
rsync: connection unexpectedly closed (0 bytes received so far) [Receiver]
|
||||||
rsync error: error in rsync protocol data stream (code 12) at io.c(226) [Receiver=3.1.1]
|
rsync error: error in rsync protocol data stream (code 12) at io.c(235) [Receiver=3.1.2]
|
||||||
echo '### bug #46520: --basefile cleans up without --cleanup'
|
echo '### bug #46520: --basefile cleans up without --cleanup'
|
||||||
### bug #46520: --basefile cleans up without --cleanup
|
### bug #46520: --basefile cleans up without --cleanup
|
||||||
touch bug_46520; parallel -S parallel@lo --bf bug_46520 ls ::: bug_46520; ssh parallel@lo ls bug_46520; parallel -S parallel@lo --cleanup --bf bug_46520 ls ::: bug_46520; stdout ssh parallel@lo ls bug_46520 # should not exist
|
touch bug_46520; parallel -S parallel@lo --bf bug_46520 ls ::: bug_46520; ssh parallel@lo ls bug_46520; parallel -S parallel@lo --cleanup --bf bug_46520 ls ::: bug_46520; stdout ssh parallel@lo ls bug_46520 # should not exist
|
||||||
|
|
|
@ -54,21 +54,21 @@ echo '### Test --onall -u'; parallel --onall -S parallel@lo,csh@lo -u '(echo {
|
||||||
3
|
3
|
||||||
echo '### Test --nonall'; parallel --nonall -k -S parallel@lo,csh@lo pwd | sort
|
echo '### Test --nonall'; parallel --nonall -k -S parallel@lo,csh@lo pwd | sort
|
||||||
### Test --nonall
|
### Test --nonall
|
||||||
/mnt/4tb/home/csh
|
/home/csh
|
||||||
/mnt/4tb/home/parallel
|
/home/parallel
|
||||||
echo '### Test --nonall -u - should be interleaved x y x y'; parallel --nonall -S parallel@lo,csh@lo -u 'pwd|grep -q csh && sleep 3; pwd;sleep 12;pwd;'
|
echo '### Test --nonall -u - should be interleaved x y x y'; parallel --nonall -S parallel@lo,csh@lo -u 'pwd|grep -q csh && sleep 3; pwd;sleep 12;pwd;'
|
||||||
### Test --nonall -u - should be interleaved x y x y
|
### Test --nonall -u - should be interleaved x y x y
|
||||||
/mnt/4tb/home/parallel
|
/home/parallel
|
||||||
/mnt/4tb/home/csh
|
/home/csh
|
||||||
/mnt/4tb/home/parallel
|
/home/parallel
|
||||||
/mnt/4tb/home/csh
|
/home/csh
|
||||||
echo '### Test read sshloginfile from STDIN'; echo parallel@lo,csh@lo | parallel -S - -k --nonall pwd; echo parallel@lo,csh@lo | parallel --sshloginfile - -k --onall pwd\; echo ::: foo
|
echo '### Test read sshloginfile from STDIN'; echo parallel@lo,csh@lo | parallel -S - -k --nonall pwd; echo parallel@lo,csh@lo | parallel --sshloginfile - -k --onall pwd\; echo ::: foo
|
||||||
### Test read sshloginfile from STDIN
|
### Test read sshloginfile from STDIN
|
||||||
/mnt/4tb/home/csh
|
/home/csh
|
||||||
/mnt/4tb/home/parallel
|
/home/parallel
|
||||||
/mnt/4tb/home/csh
|
/home/csh
|
||||||
foo
|
foo
|
||||||
/mnt/4tb/home/parallel
|
/home/parallel
|
||||||
foo
|
foo
|
||||||
echo '**'
|
echo '**'
|
||||||
**
|
**
|
||||||
|
@ -102,10 +102,10 @@ echo '**'
|
||||||
**
|
**
|
||||||
echo '### Test --workdir .'; ssh parallel@lo mkdir -p mydir; mkdir -p $HOME/mydir; cd $HOME/mydir; parallel --workdir . -S parallel@lo ::: pwd
|
echo '### Test --workdir .'; ssh parallel@lo mkdir -p mydir; mkdir -p $HOME/mydir; cd $HOME/mydir; parallel --workdir . -S parallel@lo ::: pwd
|
||||||
### Test --workdir .
|
### Test --workdir .
|
||||||
/mnt/4tb/home/parallel/mydir
|
/home/parallel/mydir
|
||||||
echo '### Test --wd .'; ssh csh@lo mkdir -p mydir; mkdir -p $HOME/mydir; cd $HOME/mydir; parallel --workdir . -S csh@lo ::: pwd
|
echo '### Test --wd .'; ssh csh@lo mkdir -p mydir; mkdir -p $HOME/mydir; cd $HOME/mydir; parallel --workdir . -S csh@lo ::: pwd
|
||||||
### Test --wd .
|
### Test --wd .
|
||||||
/mnt/4tb/home/csh/mydir
|
/home/csh/mydir
|
||||||
echo '### Test --wd {}'; ssh csh@lo rm -rf wd1 wd2; mkdir -p $HOME/mydir; cd $HOME/mydir; parallel --workdir {} -S csh@lo touch ::: wd1 wd2; ssh csh@lo ls -d wd1 wd2
|
echo '### Test --wd {}'; ssh csh@lo rm -rf wd1 wd2; mkdir -p $HOME/mydir; cd $HOME/mydir; parallel --workdir {} -S csh@lo touch ::: wd1 wd2; ssh csh@lo ls -d wd1 wd2
|
||||||
### Test --wd {}
|
### Test --wd {}
|
||||||
wd1
|
wd1
|
||||||
|
|
|
@ -79,28 +79,27 @@ par_bash_environment_too_big env_parallel: Error: env_parallel --record-env
|
||||||
par_bash_environment_too_big env_parallel: Error: And the use '--env _'
|
par_bash_environment_too_big env_parallel: Error: And the use '--env _'
|
||||||
par_bash_environment_too_big env_parallel: Error: For details see: man env_parallel
|
par_bash_environment_too_big env_parallel: Error: For details see: man env_parallel
|
||||||
par_bash_funky
|
par_bash_funky
|
||||||
par_bash_funky
|
|
||||||
par_bash_funky
|
|
||||||
par_bash_funky \\\\\\\\
|
par_bash_funky \\\\\\\\
|
||||||
par_bash_funky
|
par_bash_funky
|
||||||
par_bash_funky
|
par_bash_funky
|
||||||
par_bash_funky
!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~
|
par_bash_funky -funkymultiline
|
||||||
par_bash_funky
!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~
|
par_bash_funky -funkymultiline
|
||||||
par_bash_funky space 6
|
par_bash_funky space 6
|
||||||
par_bash_funky space 6
|
par_bash_funky space 6
|
||||||
par_bash_funky 3 arg alias_works
|
par_bash_funky 3 arg alias_works
|
||||||
par_bash_funky 3 arg alias_works_over_ssh
|
par_bash_funky 3 arg alias_works_over_ssh
|
||||||
par_bash_funky Funky-
|
par_bash_funky Funkyline-
!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~<7E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>﹜ㄓ它夾帚型陋秣捲陷絮溢劃遞蝨螃謝藥齪ヌ圴佮迓玿旂衲欶趹欹詘棰葮摵蜠樉賥濋錎膼瀔嚦黀蘜蠲╭帉爎<E5B889>-funkyline
|
||||||
par_bash_funky Funky-
|
par_bash_funky Funkyline-
!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~<7E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>﹜ㄓ它夾帚型陋秣捲陷絮溢劃遞蝨螃謝藥齪ヌ圴佮迓玿旂衲欶趹欹詘棰葮摵蜠樉賥濋錎膼瀔嚦黀蘜蠲╭帉爎<E5B889>-funkyline
|
||||||
par_bash_funky \\\
\\\\\\\\\\\\\\ \!\"\#\$%\&\'\(\)\*+,-./0123456789:\;\<\=\>\?@ABCDEFGHIJKLMNOPQRSTUVWXYZ\[\\\]\^_\`abcdefghijklmnopqrstuvwxyz\{\|\}\~€乗俓僜刓匼哱嘰圽塡奬媆孿峔嶾廫怽慭抃揬擻昞朶梊榎橽歕沑淺漒瀄焅燶<E78485><E787B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>╘‐猏玕琝璡甛痋癨盶瞈砛碶礬禱穃竆筡篭籠糪絓綷縗繺羂耚肻腬臷芢荺萛蒤蔦薥蘚蚛蝄蟎衆裓襖覾診誠謀譢豛賊赲踈躙輁轡運郳醆鈂鉢鋅錦鎈鏫鑌閈闬隲靄韁頫颸餦馶騖骪鬨鮘鯸鱘鳿鵟鶿鸤黒齖㘎<E9BD96>
|
par_bash_funky Funkymultiline-
|
||||||
|
par_bash_funky Funkymultiline-
|
||||||
|
par_bash_funky \\
|
||||||
|
par_bash_funky \
\\\\\\\\\\\\\\ \!\"\#\$%\&\'\(\)\*+,-./0123456789:\;\<\=\>\?@ABCDEFGHIJKLMNOPQRSTUVWXYZ\[\\\]\^_\`abcdefghijklmnopqrstuvwxyz\{\|\}\~<7E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>䪤Ě声蹾胬𨜏㙡笋蕚𪀔髢𦰡脪𠗫𦖭䓀珢娫糭䨵鞸㘘𩄼疱髿癧﹏兝α么功吒吭沔坼歿俞枯苒娉珮豹崤淚許廄琵跚愧稞鈾暝蓋墦穀閱璞餐縷擺黠孀髏躡ふж尐佢汻岤狖垥柦胐娖涂罡偅惝牾莍傜揊焮茻鄃幋滜綅赨塿槙箤踊嫹潿蔌醆嬞獦螏餤燡螰駹礒鎪瀙酀瀵騱酅贕鱋鱭𣘀园𧃸檝𠰺<E6AA9D>
|
||||||
par_bash_funky assoc_val_a
|
par_bash_funky assoc_val_a
|
||||||
par_bash_funky assoc_val_a
|
par_bash_funky assoc_val_a
|
||||||
par_bash_funky function_works
|
par_bash_funky function_works
|
||||||
par_bash_funky function_works_over_ssh
|
par_bash_funky function_works_over_ssh
|
||||||
par_bash_funky myvar works
|
par_bash_funky myvar works
|
||||||
par_bash_funky myvar works
|
par_bash_funky myvar works
|
||||||
par_bash_funky €亗儎厗噲墛媽崕彁憭摂晼棙櫄洔潪煚、¥ウЖ┆<D096><E29486><EFBFBD>辈炒刀犯购患骄坷谅媚牌侨墒颂臀闲岩釉罩棕仝圮蒉哙徕沅彐玷殛腱眍镳耱篝貊鼬<E8B28A><E9BCAC><EFBFBD><EFBFBD>-funky
|
|
||||||
par_bash_funky €亗儎厗噲墛媽崕彁憭摂晼棙櫄洔潪煚、¥ウЖ┆<D096><E29486><EFBFBD>辈炒刀犯购患骄坷谅媚牌侨墒颂臀闲岩釉罩棕仝圮蒉哙徕沅彐玷殛腱眍镳耱篝貊鼬<E8B28A><E9BCAC><EFBFBD><EFBFBD>-funky
|
|
||||||
par_bash_man ### bash
|
par_bash_man ### bash
|
||||||
par_bash_man ### From man env_parallel
|
par_bash_man ### From man env_parallel
|
||||||
par_bash_man aliases work
|
par_bash_man aliases work
|
||||||
|
@ -138,21 +137,21 @@ par_bash_underscore variables in aliases in and arrays in functions work
|
||||||
par_bash_underscore variables in aliases in and arrays in functions work
|
par_bash_underscore variables in aliases in and arrays in functions work
|
||||||
par_bash_underscore variables in aliases in and arrays in functions work
|
par_bash_underscore variables in aliases in and arrays in functions work
|
||||||
par_bash_underscore variables in aliases in and arrays in functions work
|
par_bash_underscore variables in aliases in and arrays in functions work
|
||||||
par_bash_underscore /bin/bash: line 55: not_copied_alias: command not found
|
par_bash_underscore /bin/bash: line 57: not_copied_alias: command not found
|
||||||
par_bash_underscore /bin/bash: line 55: not_copied_func: command not found
|
par_bash_underscore /bin/bash: line 57: not_copied_func: command not found
|
||||||
par_bash_underscore error=OK
|
par_bash_underscore error=OK
|
||||||
par_bash_underscore error=OK
|
par_bash_underscore error=OK
|
||||||
par_bash_underscore aliases in and arrays in functions work
|
par_bash_underscore aliases in and arrays in functions work
|
||||||
par_bash_underscore aliases in and arrays in functions work
|
par_bash_underscore aliases in and arrays in functions work
|
||||||
par_bash_underscore aliases in functions work
|
par_bash_underscore aliases in functions work
|
||||||
par_bash_underscore aliases in functions work
|
par_bash_underscore aliases in functions work
|
||||||
par_bash_underscore /bin/bash: line 49: myecho: command not found
|
par_bash_underscore environment: line 51: myecho: command not found
|
||||||
par_bash_underscore OK if no myecho ^^^^^^^^^^^^^^^^^^^^^^^^^
|
par_bash_underscore OK if no myecho ^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||||
par_bash_underscore /bin/bash: line 49: myecho: command not found
|
par_bash_underscore environment: line 51: myecho: command not found
|
||||||
par_bash_underscore OK if no myecho ^^^^^^^^^^^^^^^^^^^^^^^^^
|
par_bash_underscore OK if no myecho ^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||||
par_bash_underscore /bin/bash: line 48: myfunc: command not found
|
par_bash_underscore /bin/bash: line 50: myfunc: command not found
|
||||||
par_bash_underscore OK if no myfunc ^^^^^^^^^^^^^^^^^^^^^^^^^
|
par_bash_underscore OK if no myfunc ^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||||
par_bash_underscore /bin/bash: line 48: myfunc: command not found
|
par_bash_underscore /bin/bash: line 50: myfunc: command not found
|
||||||
par_bash_underscore OK if no myfunc ^^^^^^^^^^^^^^^^^^^^^^^^^
|
par_bash_underscore OK if no myfunc ^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||||
par_csh_env_parallel_fifo bug #50435: Remote fifo broke in 20150522
|
par_csh_env_parallel_fifo bug #50435: Remote fifo broke in 20150522
|
||||||
par_csh_env_parallel_fifo data from stdin
|
par_csh_env_parallel_fifo data from stdin
|
||||||
|
@ -541,7 +540,7 @@ par_tcsh_funky
|
||||||
par_tcsh_funky 3 arg alias_works
|
par_tcsh_funky 3 arg alias_works
|
||||||
par_tcsh_funky 3 arg alias_works_over_ssh
|
par_tcsh_funky 3 arg alias_works_over_ssh
|
||||||
par_tcsh_funky Funky-
!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€<7F>‚ƒ„…†‡ˆ‰Š‹Œ<E280B9>Ž<EFBFBD><C5BD>‘’“”•–—˜™š›œ<E280BA>žŸ ¡¢£¤¥¦§¨©ª«¬®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×ØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ-funky alias_var_works
|
par_tcsh_funky Funky-
!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€<7F>‚ƒ„…†‡ˆ‰Š‹Œ<E280B9>Ž<EFBFBD><C5BD>‘’“”•–—˜™š›œ<E280BA>žŸ ¡¢£¤¥¦§¨©ª«¬®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×ØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ-funky alias_var_works
|
||||||
par_tcsh_funky Funky-
!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€亗儎厗噲墛媽崕彁憭摂晼棙櫄洔潪煚、¥ウЖ┆<EFBFBD><EFBFBD><EFBFBD>辈炒刀犯购患骄坷谅媚牌侨墒颂臀闲岩釉罩棕仝圮蒉哙徕沅彐玷殛腱眍镳耱篝貊鼬<EFBFBD><EFBFBD><EFBFBD><EFBFBD>-funky alias_var_works_over_ssh
|
par_tcsh_funky Funky-
!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>癒瞽瞿瞻瞼礎禮穡穢穠竄竅簫簧簪簞簣簡糧織繕繞繚繡繒繙罈翹翻職聶<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>獺璽瓊瓣疇疆癟癡矇礙禱穫穩簾簿簸簽簷籀繫繭繹繩繪羅繳羶羹羸臘藩-funky alias_var_works_over_ssh
|
||||||
par_tcsh_funky \\\\\\\\ \ \\\
\\\\\\\\\\\\\\ \!\"\#\$%\&\'\(\)\*+,-./0123456789:\;\<\=\>\?@ABCDEFGHIJKLMNOPQRSTUVWXYZ\[\\\]\^_\`abcdefghijklmnopqrstuvwxyz\{\|\}\~€<7F>\‚\ƒ\„\…\†\‡\ˆ\‰\Š\‹\Œ\<5C>\Ž\<5C>\<5C>\‘\’\“\”\•\–\—\˜\™\š\›\œ\<5C>\ž\Ÿ\ \¡\¢\£\¤\¥\¦\§\¨\©\ª\«\¬\\®\¯\°\±\²\³\´\µ\¶\·\¸\¹\º\»\¼\½\¾\¿\À\Á\Â\Ã\Ä\Å\Æ\Ç\È\É\Ê\Ë\Ì\Í\Î\Ï\Ð\Ñ\Ò\Ó\Ô\Õ\Ö\×\Ø\Ù\Ú\Û\Ü\Ý\Þ\ß\à\á\â\ã\ä\å\æ\ç\è\é\ê\ë\ì\í\î\ï\ð\ñ\ò\ó\ô\õ\ö\÷\ø\ù\ú\û\ü\ý\þ\ÿ
|
par_tcsh_funky \\\\\\\\ \ \\\
\\\\\\\\\\\\\\ \!\"\#\$%\&\'\(\)\*+,-./0123456789:\;\<\=\>\?@ABCDEFGHIJKLMNOPQRSTUVWXYZ\[\\\]\^_\`abcdefghijklmnopqrstuvwxyz\{\|\}\~€<7F>\‚\ƒ\„\…\†\‡\ˆ\‰\Š\‹\Œ\<5C>\Ž\<5C>\<5C>\‘\’\“\”\•\–\—\˜\™\š\›\œ\<5C>\ž\Ÿ\ \¡\¢\£\¤\¥\¦\§\¨\©\ª\«\¬\\®\¯\°\±\²\³\´\µ\¶\·\¸\¹\º\»\¼\½\¾\¿\À\Á\Â\Ã\Ä\Å\Æ\Ç\È\É\Ê\Ë\Ì\Í\Î\Ï\Ð\Ñ\Ò\Ó\Ô\Õ\Ö\×\Ø\Ù\Ú\Û\Ü\Ý\Þ\ß\à\á\â\ã\ä\å\æ\ç\è\é\ê\ë\ì\í\î\ï\ð\ñ\ò\ó\ô\õ\ö\÷\ø\ù\ú\û\ü\ý\þ\ÿ
|
||||||
par_tcsh_funky func_echo: Command not found.
|
par_tcsh_funky func_echo: Command not found.
|
||||||
par_tcsh_funky func_echo: Command not found.
|
par_tcsh_funky func_echo: Command not found.
|
||||||
|
|
|
@ -10,12 +10,6 @@ par_load_csh ### Gave Word too long.
|
||||||
par_load_csh a
|
par_load_csh a
|
||||||
par_path_remote_bash bug #47695: How to set $PATH on remote? Bash
|
par_path_remote_bash bug #47695: How to set $PATH on remote? Bash
|
||||||
par_path_remote_bash
|
par_path_remote_bash
|
||||||
par_path_remote_bash * Documentation: https://help.ubuntu.com
|
|
||||||
par_path_remote_bash * Management: https://landscape.canonical.com
|
|
||||||
par_path_remote_bash * Support: https://ubuntu.com/advantage
|
|
||||||
par_path_remote_bash
|
|
||||||
par_path_remote_bash 0 updates are security updates.
|
|
||||||
par_path_remote_bash
|
|
||||||
par_path_remote_bash BASH Path before: /bin:/usr/bin with no parallel
|
par_path_remote_bash BASH Path before: /bin:/usr/bin with no parallel
|
||||||
par_path_remote_bash -bash: line 2: parallel: command not found
|
par_path_remote_bash -bash: line 2: parallel: command not found
|
||||||
par_path_remote_bash ^^^^^^^^ Not found is OK
|
par_path_remote_bash ^^^^^^^^ Not found is OK
|
||||||
|
@ -23,12 +17,6 @@ par_path_remote_bash /bin:/usr/bin:/tmp OK
|
||||||
par_path_remote_bash
|
par_path_remote_bash
|
||||||
par_path_remote_csh bug #47695: How to set $PATH on remote? csh
|
par_path_remote_csh bug #47695: How to set $PATH on remote? csh
|
||||||
par_path_remote_csh
|
par_path_remote_csh
|
||||||
par_path_remote_csh * Documentation: https://help.ubuntu.com
|
|
||||||
par_path_remote_csh * Management: https://landscape.canonical.com
|
|
||||||
par_path_remote_csh * Support: https://ubuntu.com/advantage
|
|
||||||
par_path_remote_csh
|
|
||||||
par_path_remote_csh 0 updates are security updates.
|
|
||||||
par_path_remote_csh
|
|
||||||
par_path_remote_csh Warning: no access to tty (Bad file descriptor).
|
par_path_remote_csh Warning: no access to tty (Bad file descriptor).
|
||||||
par_path_remote_csh Thus no job control in this shell.
|
par_path_remote_csh Thus no job control in this shell.
|
||||||
par_path_remote_csh CSH Path before: /bin:/usr/bin with no parallel
|
par_path_remote_csh CSH Path before: /bin:/usr/bin with no parallel
|
||||||
|
|
|
@ -35,7 +35,7 @@ If you pay 10000 EUR you should feel free to use GNU Parallel without citing.
|
||||||
To silence this citation notice: run 'parallel --citation'.
|
To silence this citation notice: run 'parallel --citation'.
|
||||||
|
|
||||||
10 files to edit
|
10 files to edit
|
||||||
[?1049h[?1h=[1;24r[?12;25h[?12l[?25h[27m[23m[m[H[2J[?25l[24;1H"file1" [New File][2;1H[1m[34m~ [3;1H~ [4;1H~ [5;1H~ [6;1H~ [7;1H~ [8;1H~ [9;1H~ [10;1H~ [11;1H~ [12;1H~ [13;1H~ [14;1H~ [15;1H~ [16;1H~ [17;1H~ [18;1H~ [19;1H~ [20;1H~ [21;1H~ [22;1H~ [23;1H~ [1;1H[?12l[?25h[?25l[m[24;1H[1m[37m[41mE173: 9 more files to edit[1;1H[?12l[?25h[24;1H[m[24;1H[K[24;1H[?1l>[?1049lAcademic tradition requires you to cite works you base your article on.
|
[?1049h[?1h=[1;24r[?12;25h[?12l[?25h[27m[23m[m[H[2J[?25l[24;1H"file1" [New File][2;1H[94m~ [3;1H~ [4;1H~ [5;1H~ [6;1H~ [7;1H~ [8;1H~ [9;1H~ [10;1H~ [11;1H~ [12;1H~ [13;1H~ [14;1H~ [15;1H~ [16;1H~ [17;1H~ [18;1H~ [19;1H~ [20;1H~ [21;1H~ [22;1H~ [23;1H~ [1;1H[?12l[?25h[?25l[m[24;1H[97m[41mE173: 9 more files to edit[1;1H[?12l[?25h[24;1H[m[24;1H[K[24;1H[?1l>[?1049lAcademic tradition requires you to cite works you base your article on.
|
||||||
When using programs that use GNU Parallel to process data for publication
|
When using programs that use GNU Parallel to process data for publication
|
||||||
please cite:
|
please cite:
|
||||||
|
|
||||||
|
|
|
@ -1197,15 +1197,16 @@ from ff to xffy
|
||||||
from r
r
to xr
r
y
|
from r
r
to xr
r
y
|
||||||
from t t to xt t y
|
from t t to xt t y
|
||||||
from vv to xvvy
|
from vv to xvvy
|
||||||
stdout parallel -k -i echo from \{\} to x{}y < items.xi
|
# GNU Parallel will see 'echo' as argument to '-i' if not given {}
|
||||||
from: can't read /var/mail/{}
|
stdout parallel -k -i {} echo from \{\} to x{}y < items.xi
|
||||||
from: can't read /var/mail/{}
|
from
to x
y
|
||||||
from: can't read /var/mail/{}
|
from dumb to xdumby
|
||||||
from: can't read /var/mail/{}
|
from s s to x s s y
|
||||||
from: can't read /var/mail/{}
|
from ff to xffy
|
||||||
from: can't read /var/mail/{}
|
from
r
r
to x
r
r
y
|
||||||
from: can't read /var/mail/{}
|
from t t to x t t y
|
||||||
from: can't read /var/mail/{}
|
from vv to xvvy
|
||||||
|
from
to x
y
|
||||||
echo '### -i -s26 echo from \{\} to x{}y < items.xi'
|
echo '### -i -s26 echo from \{\} to x{}y < items.xi'
|
||||||
### -i -s26 echo from \{\} to x{}y < items.xi
|
### -i -s26 echo from \{\} to x{}y < items.xi
|
||||||
stdsort xargs -i -s26 echo from \{\} to x{}y < items.xi
|
stdsort xargs -i -s26 echo from \{\} to x{}y < items.xi
|
||||||
|
|
|
@ -146,8 +146,8 @@ echo '### Test make .deb package'; cd ~/privat/parallel/packager/debian; std
|
||||||
To install the GNU Parallel Debian package, run:
|
To install the GNU Parallel Debian package, run:
|
||||||
echo '### Test of segfaulting issue'
|
echo '### Test of segfaulting issue'
|
||||||
### Test of segfaulting issue
|
### Test of segfaulting issue
|
||||||
echo 'This gave /home/tange/bin/stdout: line 3: 20374 Segmentation fault "$@" 2>&1'; echo 'before adding wait() before exit'; seq 1 300 | stdout parallel ./trysegfault
|
echo 'This gave ~/bin/stdout: line 3: 20374 Segmentation fault "$@" 2>&1'; echo 'before adding wait() before exit'; seq 1 300 | stdout parallel ./trysegfault
|
||||||
This gave /home/tange/bin/stdout: line 3: 20374 Segmentation fault "$@" 2>&1
|
This gave ~/bin/stdout: line 3: 20374 Segmentation fault "$@" 2>&1
|
||||||
before adding wait() before exit
|
before adding wait() before exit
|
||||||
echo '### Test basic --arg-sep'
|
echo '### Test basic --arg-sep'
|
||||||
### Test basic --arg-sep
|
### Test basic --arg-sep
|
||||||
|
|
|
@ -1,42 +1,45 @@
|
||||||
### Test --env - https://savannah.gnu.org/bugs/?37351
|
par_env_160 ### Test --env for \160 - which kills csh - single and double - no output is good
|
||||||
a 2 spaces b 1
|
par_env_160_onall ### Test --env for \160 - which kills csh - single and double --onall - no output is good
|
||||||
a 2 spaces b 1
|
par_env_160_onall 12 1 160V2= 160
|
||||||
a 2 spaces b 1
|
par_env_newline_backslash_bash ### Test --env for \n and \\ - single and double (bash only) - no output is good
|
||||||
a 2 spaces b 1
|
par_env_newline_backslash_bash 8
|
||||||
a 2 spaces b 1
|
par_env_newline_backslash_bash 8
|
||||||
a 2 spaces b a > My brother's 12" records < b 2
|
par_env_newline_backslash_csh ### Test --env for \n and \\ - single and double (*csh only) - no output is good but csh fails
|
||||||
a 2 spaces b a > My brother's 12" records < b 2
|
par_env_newline_backslash_csh 2 2\ \92V2=\ \92
|
||||||
a 2 spaces b a > My brother's 12" records < b 2
|
par_env_newline_backslash_csh 2 2\\ \92V2=\\ \92
|
||||||
a 2 spaces b a > My brother's 12" records < b 2
|
par_env_newline_backslash_csh 2 Unmatched ".
|
||||||
a 2 spaces b a > My brother's 12" records < b 2
|
par_env_newline_backslash_csh 2 Unmatched '"'.
|
||||||
a 2 spaces b a > My brother's 12" records < b 3
|
par_env_newline_backslash_onall_bash ### Test --env for \n and \\ - single and double --onall (bash only) - no output is good
|
||||||
a 2 spaces b a > My brother's 12" records < b 3
|
par_env_newline_backslash_onall_bash 16
|
||||||
a 2 spaces b a > My brother's 12" records < b 3
|
par_env_newline_backslash_onall_bash 16
|
||||||
a 2 spaces b a > My brother's 12" records < b 3
|
par_env_newline_backslash_onall_bash 8 1
|
||||||
a 2 spaces b a > My brother's 12" records < b 3
|
par_env_newline_backslash_onall_bash 8 10
|
||||||
a \'"b 4
|
par_env_newline_backslash_onall_bash 8 10V2=
|
||||||
a \'"b 4
|
par_env_newline_backslash_onall_bash 8 2\\ \92V2=\\ \92
|
||||||
a \'"b 4
|
par_env_newline_backslash_onall_csh ### Test --env for \n and \\ - single and double --onall (*csh only) - no output is good but csh fails
|
||||||
a \'"b 4
|
par_space ### Test --env - https://savannah.gnu.org/bugs/?37351
|
||||||
a \'"b 4
|
par_space a 2 spaces b 1
|
||||||
a' * ? >o <i*? ][\!#¤%=( ) | }b 5
|
par_space a 2 spaces b 1
|
||||||
a' * ? >o <i*? ][\!#¤%=( ) | }b 5
|
par_space a 2 spaces b 1
|
||||||
a' * ? >o <i*? ][\!#¤%=( ) | }b 5
|
par_space a 2 spaces b 1
|
||||||
a' * ? >o <i*? ][\!#¤%=( ) | }b 5
|
par_space a 2 spaces b 1
|
||||||
a' * ? >o <i*? ][\!#¤%=( ) | }b 5
|
par_space a 2 spaces b a > My brother's 12" records < b 2
|
||||||
### Test --env for \n and \\ - single and double (bash only) - no output is good
|
par_space a 2 spaces b a > My brother's 12" records < b 2
|
||||||
8
|
par_space a 2 spaces b a > My brother's 12" records < b 2
|
||||||
8
|
par_space a 2 spaces b a > My brother's 12" records < b 2
|
||||||
### Test --env for \n and \\ - single and double (*csh only) - no output is good but csh fails
|
par_space a 2 spaces b a > My brother's 12" records < b 2
|
||||||
2 2\ \92V2=\ \92
|
par_space a 2 spaces b a > My brother's 12" records < b 3
|
||||||
2 2\\ \92V2=\\ \92
|
par_space a 2 spaces b a > My brother's 12" records < b 3
|
||||||
### Test --env for \n and \\ - single and double --onall (bash only) - no output is good
|
par_space a 2 spaces b a > My brother's 12" records < b 3
|
||||||
2 1
|
par_space a 2 spaces b a > My brother's 12" records < b 3
|
||||||
2 10
|
par_space a 2 spaces b a > My brother's 12" records < b 3
|
||||||
2 10V2=
|
par_space_quote a \'"b 4
|
||||||
2 2\\ \92V2=\\ \92
|
par_space_quote a \'"b 4
|
||||||
### Test --env for \n and \\ - single and double --onall (*csh only) - no output is good but csh fails
|
par_space_quote a \'"b 4
|
||||||
1 2\ \92V2=\ \92
|
par_space_quote a \'"b 4
|
||||||
1 2\\ \92V2=\\ \92
|
par_space_quote a \'"b 4
|
||||||
### Test --env for \160 - which kills csh - single and double - no output is good
|
par_special_char a' * ? >o <i*? ][\!#¤%=( ) | }b 5
|
||||||
### Test --env for \160 - which kills csh - single and double --onall - no output is good
|
par_special_char a' * ? >o <i*? ][\!#¤%=( ) | }b 5
|
||||||
|
par_special_char a' * ? >o <i*? ][\!#¤%=( ) | }b 5
|
||||||
|
par_special_char a' * ? >o <i*? ][\!#¤%=( ) | }b 5
|
||||||
|
par_special_char a' * ? >o <i*? ][\!#¤%=( ) | }b 5
|
||||||
|
|
|
@ -1,20 +1,16 @@
|
||||||
bug #46120: Suspend should suspend (at least local) children
|
bug #46120: Suspend should suspend (at least local) children
|
||||||
it should burn 1.9 CPU seconds, but no more than that
|
it should burn 1.9 CPU seconds, but no more than that
|
||||||
The 5 second sleep will make it be killed by timeout when it fgs
|
The 5 second sleep will make it be killed by timeout when it fgs
|
||||||
1024 SHA256:SXgag2Z2L91JsrT5WjNBcARD1EpyCCj4JctVJ6Zpzm0 ~/.ssh/id_dsa (DSA)
|
|
||||||
8192 SHA256:lYn04AefJq/5r0e4FftceviJ7JVnq9NGKY3CW9XMpO8 ~/.ssh/id_rsa (RSA)
|
|
||||||
1024 SHA256:R8Dy6OsG3j646iO2KeSkCAmBiR5s2720ZYx695+0JHw ~/.ssh/id_rsa_1024 (RSA)
|
|
||||||
4096 SHA256:jUQ9ysfprs7UOckttjjVb+j3qikUmKWDEWC+eEJkbDQ ~/.ssh/id_rsa_openindiana (RSA)
|
|
||||||
|
|
||||||
stdout /usr/bin/time -f CPUTIME=%U parallel --timeout 5 burnP6 ::: 1 | grep -q CPUTIME=1
|
stdout /usr/bin/time -f CPUTIME=%U parallel --timeout 5 -q perl -e "while(1){ }" ::: 1 | grep --color=auto -q CPUTIME=1
|
||||||
Zero=OK 0
|
Zero=OK 0
|
||||||
1024 SHA256:SXgag2Z2L91JsrT5WjNBcARD1EpyCCj4JctVJ6Zpzm0 ~/.ssh/id_dsa (DSA)
|
|
||||||
8192 SHA256:lYn04AefJq/5r0e4FftceviJ7JVnq9NGKY3CW9XMpO8 ~/.ssh/id_rsa (RSA)
|
|
||||||
1024 SHA256:R8Dy6OsG3j646iO2KeSkCAmBiR5s2720ZYx695+0JHw ~/.ssh/id_rsa_1024 (RSA)
|
|
||||||
4096 SHA256:jUQ9ysfprs7UOckttjjVb+j3qikUmKWDEWC+eEJkbDQ ~/.ssh/id_rsa_openindiana (RSA)
|
|
||||||
|
|
||||||
echo 1 | stdout /usr/bin/time -f CPUTIME=%U parallel --timeout 5 burnP6 | grep -q CPUTIME=1
|
echo 1 | stdout /usr/bin/time -f CPUTIME=%U parallel --timeout 5 -q perl -e "while(1){ }" | grep --color=auto -q CPUTIME=1
|
||||||
Zero=OK 0
|
Zero=OK 0
|
||||||
|
Control case: Burn for 2.9 seconds
|
||||||
|
|
||||||
|
stdout /usr/bin/time -f CPUTIME=%U parallel --timeout 5 -q perl -e "while(1){ }" ::: 1 | grep --color=auto -q CPUTIME=1
|
||||||
|
1=OK 1
|
||||||
echo '### -L -n with pipe'
|
echo '### -L -n with pipe'
|
||||||
### -L -n with pipe
|
### -L -n with pipe
|
||||||
seq 14 | parallel --pipe -k -L 3 -n 2 'cat;echo 6 Ln line record'
|
seq 14 | parallel --pipe -k -L 3 -n 2 'cat;echo 6 Ln line record'
|
||||||
|
|
|
@ -1,80 +1,80 @@
|
||||||
echo '### tmux1.9'
|
echo '### tmux-1.9'
|
||||||
### tmux1.9
|
### tmux-1.9
|
||||||
seq 000 100 | PARALLEL_TMUX=tmux1.9 par_tmux
|
seq 000 100 | PARALLEL_TMUX=tmux-1.9 par_tmux
|
||||||
See output with: tmux1.9 -S /tmp/parallel-local7-tmpdir/tmsXXXXX attach
|
See output with: tmux-1.9 -S /tmp/parallel-local7-tmpdir/tmsXXXXX attach
|
||||||
0
|
0
|
||||||
seq 100 200 | PARALLEL_TMUX=tmux1.9 par_tmux
|
seq 100 200 | PARALLEL_TMUX=tmux-1.9 par_tmux
|
||||||
See output with: tmux1.9 -S /tmp/parallel-local7-tmpdir/tmsXXXXX attach
|
See output with: tmux-1.9 -S /tmp/parallel-local7-tmpdir/tmsXXXXX attach
|
||||||
0
|
0
|
||||||
seq 200 300 | PARALLEL_TMUX=tmux1.9 par_tmux
|
seq 200 300 | PARALLEL_TMUX=tmux-1.9 par_tmux
|
||||||
See output with: tmux1.9 -S /tmp/parallel-local7-tmpdir/tmsXXXXX attach
|
See output with: tmux-1.9 -S /tmp/parallel-local7-tmpdir/tmsXXXXX attach
|
||||||
0
|
0
|
||||||
seq 300 400 | PARALLEL_TMUX=tmux1.9 par_tmux
|
seq 300 400 | PARALLEL_TMUX=tmux-1.9 par_tmux
|
||||||
See output with: tmux1.9 -S /tmp/parallel-local7-tmpdir/tmsXXXXX attach
|
See output with: tmux-1.9 -S /tmp/parallel-local7-tmpdir/tmsXXXXX attach
|
||||||
0
|
0
|
||||||
seq 400 500 | PARALLEL_TMUX=tmux1.9 par_tmux
|
seq 400 500 | PARALLEL_TMUX=tmux-1.9 par_tmux
|
||||||
See output with: tmux1.9 -S /tmp/parallel-local7-tmpdir/tmsXXXXX attach
|
See output with: tmux-1.9 -S /tmp/parallel-local7-tmpdir/tmsXXXXX attach
|
||||||
0
|
0
|
||||||
seq 500 600 | PARALLEL_TMUX=tmux1.9 par_tmux
|
seq 500 600 | PARALLEL_TMUX=tmux-1.9 par_tmux
|
||||||
See output with: tmux1.9 -S /tmp/parallel-local7-tmpdir/tmsXXXXX attach
|
See output with: tmux-1.9 -S /tmp/parallel-local7-tmpdir/tmsXXXXX attach
|
||||||
0
|
0
|
||||||
seq 600 700 | PARALLEL_TMUX=tmux1.9 par_tmux
|
seq 600 700 | PARALLEL_TMUX=tmux-1.9 par_tmux
|
||||||
See output with: tmux1.9 -S /tmp/parallel-local7-tmpdir/tmsXXXXX attach
|
See output with: tmux-1.9 -S /tmp/parallel-local7-tmpdir/tmsXXXXX attach
|
||||||
0
|
0
|
||||||
seq 700 800 | PARALLEL_TMUX=tmux1.9 par_tmux
|
seq 700 800 | PARALLEL_TMUX=tmux-1.9 par_tmux
|
||||||
See output with: tmux1.9 -S /tmp/parallel-local7-tmpdir/tmsXXXXX attach
|
See output with: tmux-1.9 -S /tmp/parallel-local7-tmpdir/tmsXXXXX attach
|
||||||
0
|
0
|
||||||
seq 800 900 | PARALLEL_TMUX=tmux1.9 par_tmux
|
seq 800 900 | PARALLEL_TMUX=tmux-1.9 par_tmux
|
||||||
See output with: tmux1.9 -S /tmp/parallel-local7-tmpdir/tmsXXXXX attach
|
See output with: tmux-1.9 -S /tmp/parallel-local7-tmpdir/tmsXXXXX attach
|
||||||
0
|
0
|
||||||
seq 900 1000 | PARALLEL_TMUX=tmux1.9 par_tmux
|
seq 900 1000 | PARALLEL_TMUX=tmux-1.9 par_tmux
|
||||||
See output with: tmux1.9 -S /tmp/parallel-local7-tmpdir/tmsXXXXX attach
|
See output with: tmux-1.9 -S /tmp/parallel-local7-tmpdir/tmsXXXXX attach
|
||||||
0
|
0
|
||||||
seq 1000 1006 | PARALLEL_TMUX=tmux1.9 par_tmux
|
seq 1000 1006 | PARALLEL_TMUX=tmux-1.9 par_tmux
|
||||||
See output with: tmux1.9 -S /tmp/parallel-local7-tmpdir/tmsXXXXX attach
|
See output with: tmux-1.9 -S /tmp/parallel-local7-tmpdir/tmsXXXXX attach
|
||||||
0
|
0
|
||||||
echo '### tmux1.9 fails'
|
echo '### tmux-1.9 fails'
|
||||||
### tmux1.9 fails
|
### tmux-1.9 fails
|
||||||
echo 1007 | PARALLEL_TMUX=tmux1.9 par_tmux
|
echo 1007 | PARALLEL_TMUX=tmux-1.9 par_tmux
|
||||||
parallel: Error: Command line too long (2023 >= 2023) at input 0: 1007
|
parallel: Error: Command line too long (2023 >= 2023) at input 0: 1007
|
||||||
255
|
255
|
||||||
echo 1008 | PARALLEL_TMUX=tmux1.9 par_tmux
|
echo 1008 | PARALLEL_TMUX=tmux-1.9 par_tmux
|
||||||
parallel: Error: Command line too long (2025 >= 2023) at input 0: 1008
|
parallel: Error: Command line too long (2025 >= 2023) at input 0: 1008
|
||||||
255
|
255
|
||||||
echo 1009 | PARALLEL_TMUX=tmux1.9 par_tmux
|
echo 1009 | PARALLEL_TMUX=tmux-1.9 par_tmux
|
||||||
parallel: Error: Command line too long (2027 >= 2023) at input 0: 1009
|
parallel: Error: Command line too long (2027 >= 2023) at input 0: 1009
|
||||||
255
|
255
|
||||||
echo '### tmux1.8'
|
echo '### tmux-1.8'
|
||||||
### tmux1.8
|
### tmux-1.8
|
||||||
seq 1 50 | PARALLEL_TMUX=tmux1.8 par_tmux
|
seq 1 50 | PARALLEL_TMUX=tmux-1.8 par_tmux
|
||||||
See output with: tmux1.8 -S /tmp/parallel-local7-tmpdir/tmsXXXXX attach
|
See output with: tmux-1.8 -S /tmp/parallel-local7-tmpdir/tmsXXXXX attach
|
||||||
0
|
0
|
||||||
seq 51 100 | PARALLEL_TMUX=tmux1.8 par_tmux
|
seq 51 100 | PARALLEL_TMUX=tmux-1.8 par_tmux
|
||||||
See output with: tmux1.8 -S /tmp/parallel-local7-tmpdir/tmsXXXXX attach
|
See output with: tmux-1.8 -S /tmp/parallel-local7-tmpdir/tmsXXXXX attach
|
||||||
0
|
0
|
||||||
seq 101 113 | PARALLEL_TMUX=tmux1.8 par_tmux
|
seq 101 113 | PARALLEL_TMUX=tmux-1.8 par_tmux
|
||||||
See output with: tmux1.8 -S /tmp/parallel-local7-tmpdir/tmsXXXXX attach
|
See output with: tmux-1.8 -S /tmp/parallel-local7-tmpdir/tmsXXXXX attach
|
||||||
0
|
0
|
||||||
echo '### tmux1.8 fails'
|
echo '### tmux-1.8 fails'
|
||||||
### tmux1.8 fails
|
### tmux-1.8 fails
|
||||||
echo 114 | PARALLEL_TMUX=tmux1.8 par_tmux
|
echo 114 | PARALLEL_TMUX=tmux-1.8 par_tmux
|
||||||
parallel: Error: Command line too long (236 >= 236) at input 0: 114
|
parallel: Error: Command line too long (236 >= 236) at input 0: 114
|
||||||
255
|
255
|
||||||
echo 115 | PARALLEL_TMUX=tmux1.8 par_tmux
|
echo 115 | PARALLEL_TMUX=tmux-1.8 par_tmux
|
||||||
parallel: Error: Command line too long (238 >= 236) at input 0: 115
|
parallel: Error: Command line too long (238 >= 236) at input 0: 115
|
||||||
255
|
255
|
||||||
echo 116 | PARALLEL_TMUX=tmux1.8 par_tmux
|
echo 116 | PARALLEL_TMUX=tmux-1.8 par_tmux
|
||||||
parallel: Error: Command line too long (240 >= 236) at input 0: 116
|
parallel: Error: Command line too long (240 >= 236) at input 0: 116
|
||||||
255
|
255
|
||||||
echo '### tmux1.8 0..255 ascii'
|
echo '### tmux-1.8 0..255 ascii'
|
||||||
### tmux1.8 0..255 ascii
|
### tmux-1.8 0..255 ascii
|
||||||
perl -e 'print map { ($_, map { pack("c*",$_) } grep { $_>=1 && $_!=10 } $_-110..$_),"\n" } 0..255' | PARALLEL_TMUX=tmux1.8 stdout parallel --tmux --timeout 3 echo | par_tmux_filter; echo $?
|
perl -e 'print map { ($_, map { pack("c*",$_) } grep { $_>=1 && $_!=10 } $_-110..$_),"\n" } 0..255' | PARALLEL_TMUX=tmux-1.8 stdout parallel --tmux --timeout 3 echo | par_tmux_filter; echo $?
|
||||||
See output with: tmux1.8 -S /tmp/parallel-local7-tmpdir/tmsXXXXX attach
|
See output with: tmux-1.8 -S /tmp/parallel-local7-tmpdir/tmsXXXXX attach
|
||||||
0
|
0
|
||||||
echo '### tmux1.9 0..255 ascii'
|
echo '### tmux-1.9 0..255 ascii'
|
||||||
### tmux1.9 0..255 ascii
|
### tmux-1.9 0..255 ascii
|
||||||
perl -e 'print map { ($_, map { pack("c*",$_) } grep { $_>=1 && $_!=10 } 0..$_),"\n" } 0..255' | PARALLEL_TMUX=tmux1.9 stdout parallel --tmux --timeout 3 echo | par_tmux_filter; echo $?
|
perl -e 'print map { ($_, map { pack("c*",$_) } grep { $_>=1 && $_!=10 } 0..$_),"\n" } 0..255' | PARALLEL_TMUX=tmux-1.9 stdout parallel --tmux --timeout 3 echo | par_tmux_filter; echo $?
|
||||||
See output with: tmux1.9 -S /tmp/parallel-local7-tmpdir/tmsXXXXX attach
|
See output with: tmux-1.9 -S /tmp/parallel-local7-tmpdir/tmsXXXXX attach
|
||||||
0
|
0
|
||||||
echo '### Test output ascii'
|
echo '### Test output ascii'
|
||||||
### Test output ascii
|
### Test output ascii
|
||||||
|
@ -83,12 +83,12 @@ See output with: tmux -S /tmp/parallel-local7-tmpdir/tmsXXXXX attach
|
||||||
053c7e8e945ef7641fc63bc309ac069d -
|
053c7e8e945ef7641fc63bc309ac069d -
|
||||||
echo '### Test critical lengths. Must not block'
|
echo '### Test critical lengths. Must not block'
|
||||||
### Test critical lengths. Must not block
|
### Test critical lengths. Must not block
|
||||||
seq 70 130 | PARALLEL_TMUX=tmux1.8 stdout parallel --tmux echo '{}{=$_="&"x$_=}' | par_tmux_filter
|
seq 70 130 | PARALLEL_TMUX=tmux-1.8 stdout parallel --tmux echo '{}{=$_="&"x$_=}' | par_tmux_filter
|
||||||
See output with: tmux1.8 -S /tmp/parallel-local7-tmpdir/tmsXXXXX attach
|
See output with: tmux-1.8 -S /tmp/parallel-local7-tmpdir/tmsXXXXX attach
|
||||||
parallel: Error: Command line too long (236 >= 236) at input 0: 114
|
parallel: Error: Command line too long (236 >= 236) at input 0: 114
|
||||||
seq 70 130 | PARALLEL_TMUX=tmux1.9 stdout parallel --tmux echo '{}{=$_="&"x$_=}' | par_tmux_filter
|
seq 70 130 | PARALLEL_TMUX=tmux-1.9 stdout parallel --tmux echo '{}{=$_="&"x$_=}' | par_tmux_filter
|
||||||
See output with: tmux1.9 -S /tmp/parallel-local7-tmpdir/tmsXXXXX attach
|
See output with: tmux-1.9 -S /tmp/parallel-local7-tmpdir/tmsXXXXX attach
|
||||||
seq 280 425 | PARALLEL_TMUX=tmux1.8 stdout parallel --tmux echo '{}{=$_="a"x$_=}' | par_tmux_filter
|
seq 280 425 | PARALLEL_TMUX=tmux-1.8 stdout parallel --tmux echo '{}{=$_="a"x$_=}' | par_tmux_filter
|
||||||
parallel: Error: Command line too long (288 >= 236) at input 0: 280
|
parallel: Error: Command line too long (288 >= 236) at input 0: 280
|
||||||
seq 280 425 | PARALLEL_TMUX=tmux1.9 stdout parallel --tmux echo '{}{=$_="a"x$_=}' | par_tmux_filter
|
seq 280 425 | PARALLEL_TMUX=tmux-1.9 stdout parallel --tmux echo '{}{=$_="a"x$_=}' | par_tmux_filter
|
||||||
See output with: tmux1.9 -S /tmp/parallel-local7-tmpdir/tmsXXXXX attach
|
See output with: tmux-1.9 -S /tmp/parallel-local7-tmpdir/tmsXXXXX attach
|
||||||
|
|
|
@ -63,7 +63,7 @@ echo '### Test --number-of-cpus'; stdout $NICEPAR --number-of-cpus
|
||||||
1
|
1
|
||||||
echo '### Test --number-of-cores'; stdout $NICEPAR --number-of-cores
|
echo '### Test --number-of-cores'; stdout $NICEPAR --number-of-cores
|
||||||
### Test --number-of-cores
|
### Test --number-of-cores
|
||||||
8
|
2
|
||||||
echo '### Test --use-cpus-instead-of-cores'; (seq 1 8 | stdout parallel --use-cpus-instead-of-cores -j100% sleep) && echo CPUs done & (seq 1 8 | stdout parallel -j100% sleep) && echo cores done & echo 'Cores should complete first on machines with less than 8 physical CPUs'; wait
|
echo '### Test --use-cpus-instead-of-cores'; (seq 1 8 | stdout parallel --use-cpus-instead-of-cores -j100% sleep) && echo CPUs done & (seq 1 8 | stdout parallel -j100% sleep) && echo cores done & echo 'Cores should complete first on machines with less than 8 physical CPUs'; wait
|
||||||
### Test --use-cpus-instead-of-cores
|
### Test --use-cpus-instead-of-cores
|
||||||
Cores should complete first on machines with less than 8 physical CPUs
|
Cores should complete first on machines with less than 8 physical CPUs
|
||||||
|
|
Loading…
Reference in a new issue