Released as 20211022 ('Sinclair')

This commit is contained in:
Ole Tange 2021-10-22 22:10:09 +02:00
parent ccc54495bd
commit 06d992e1cf
23 changed files with 111 additions and 79 deletions

23
NEWS
View file

@ -1,14 +1,31 @@
20211022
New in this release:
* Don't postpone output until $jobslots jobs have been started.
* Bug fixes and man page updates.
News about GNU Parallel:
* How to Install GNU Parallel using Anaconda | Linux
https://www.youtube.com/watch?v=UwDNVP-L0qA
* Install GNU Parallel from source code | Linux
https://www.youtube.com/watch?v=PIyJH4ben5o
* Compiling GNU Parallel on CentOS-7
https://thelinuxcluster.com/2021/10/19/compiling-gnu-parallel-on-centos-7/
20210922 20210922
New in this release: New in this release:
* Bug fixes and man page updates. * Bug fixes and man page updates.
News about GNU Parallel: News about GNU Parallel:
* 3 Programs that will Level Up your Bash Game * 3 Programs that will Level Up your Bash Game
https://medium.com/codex/3-programs-that-will-level-up-your-bash-game-bf14e17e2291 https://medium.com/codex/3-programs-that-will-level-up-your-bash-game-bf14e17e2291

24
README
View file

@ -57,11 +57,11 @@ document.
Full installation of GNU Parallel is as simple as: Full installation of GNU Parallel is as simple as:
wget https://ftpmirror.gnu.org/parallel/parallel-20210922.tar.bz2 wget https://ftpmirror.gnu.org/parallel/parallel-20211022.tar.bz2
wget https://ftpmirror.gnu.org/parallel/parallel-20210922.tar.bz2.sig wget https://ftpmirror.gnu.org/parallel/parallel-20211022.tar.bz2.sig
gpg parallel-20210922.tar.bz2.sig gpg parallel-20211022.tar.bz2.sig
bzip2 -dc parallel-20210922.tar.bz2 | tar xvf - bzip2 -dc parallel-20211022.tar.bz2 | tar xvf -
cd parallel-20210922 cd parallel-20211022
./configure && make && sudo make install ./configure && make && sudo make install
@ -70,11 +70,11 @@ Full installation of GNU Parallel is as simple as:
If you are not root you can add ~/bin to your path and install in If you are not root you can add ~/bin to your path and install in
~/bin and ~/share: ~/bin and ~/share:
wget https://ftpmirror.gnu.org/parallel/parallel-20210922.tar.bz2 wget https://ftpmirror.gnu.org/parallel/parallel-20211022.tar.bz2
wget https://ftpmirror.gnu.org/parallel/parallel-20210922.tar.bz2.sig wget https://ftpmirror.gnu.org/parallel/parallel-20211022.tar.bz2.sig
gpg parallel-20210922.tar.bz2.sig gpg parallel-20211022.tar.bz2.sig
bzip2 -dc parallel-20210922.tar.bz2 | tar xvf - bzip2 -dc parallel-20211022.tar.bz2 | tar xvf -
cd parallel-20210922 cd parallel-20211022
./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
@ -122,8 +122,8 @@ will love you for it.
When using programs that use GNU Parallel to process data for When using programs that use GNU Parallel to process data for
publication please cite: publication please cite:
Tange, O. (2021, September 22). GNU Parallel 20210922 ('Vindelev'). Tange, O. (2021, October 22). GNU Parallel 20211022 ('Sinclair').
Zenodo. https://doi.org/10.5281/zenodo.5523272 Zenodo. https://doi.org/10.5281/zenodo.5593566
Copyright (C) 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, Copyright (C) 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015,
2016, 2017, 2018, 2019, 2020, 2021 Ole Tange, http://ole.tange.dk and 2016, 2017, 2018, 2019, 2020, 2021 Ole Tange, http://ole.tange.dk and

20
configure vendored
View file

@ -1,6 +1,6 @@
#! /bin/sh #! /bin/sh
# Guess values for system-dependent variables and create Makefiles. # Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.69 for parallel 20210922. # Generated by GNU Autoconf 2.69 for parallel 20211022.
# #
# Report bugs to <bug-parallel@gnu.org>. # Report bugs to <bug-parallel@gnu.org>.
# #
@ -579,8 +579,8 @@ MAKEFLAGS=
# Identity of this package. # Identity of this package.
PACKAGE_NAME='parallel' PACKAGE_NAME='parallel'
PACKAGE_TARNAME='parallel' PACKAGE_TARNAME='parallel'
PACKAGE_VERSION='20210922' PACKAGE_VERSION='20211022'
PACKAGE_STRING='parallel 20210922' PACKAGE_STRING='parallel 20211022'
PACKAGE_BUGREPORT='bug-parallel@gnu.org' PACKAGE_BUGREPORT='bug-parallel@gnu.org'
PACKAGE_URL='' PACKAGE_URL=''
@ -1214,7 +1214,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing. # Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh. # This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF cat <<_ACEOF
\`configure' configures parallel 20210922 to adapt to many kinds of systems. \`configure' configures parallel 20211022 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]... Usage: $0 [OPTION]... [VAR=VALUE]...
@ -1281,7 +1281,7 @@ fi
if test -n "$ac_init_help"; then if test -n "$ac_init_help"; then
case $ac_init_help in case $ac_init_help in
short | recursive ) echo "Configuration of parallel 20210922:";; short | recursive ) echo "Configuration of parallel 20211022:";;
esac esac
cat <<\_ACEOF cat <<\_ACEOF
@ -1357,7 +1357,7 @@ fi
test -n "$ac_init_help" && exit $ac_status test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then if $ac_init_version; then
cat <<\_ACEOF cat <<\_ACEOF
parallel configure 20210922 parallel configure 20211022
generated by GNU Autoconf 2.69 generated by GNU Autoconf 2.69
Copyright (C) 2012 Free Software Foundation, Inc. Copyright (C) 2012 Free Software Foundation, Inc.
@ -1374,7 +1374,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake. running configure, to aid debugging if configure makes a mistake.
It was created by parallel $as_me 20210922, which was It was created by parallel $as_me 20211022, which was
generated by GNU Autoconf 2.69. Invocation command line was generated by GNU Autoconf 2.69. Invocation command line was
$ $0 $@ $ $0 $@
@ -2237,7 +2237,7 @@ fi
# Define the identity of the package. # Define the identity of the package.
PACKAGE='parallel' PACKAGE='parallel'
VERSION='20210922' VERSION='20211022'
cat >>confdefs.h <<_ACEOF cat >>confdefs.h <<_ACEOF
@ -2880,7 +2880,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# report actual input values of CONFIG_FILES etc. instead of their # report actual input values of CONFIG_FILES etc. instead of their
# values after options handling. # values after options handling.
ac_log=" ac_log="
This file was extended by parallel $as_me 20210922, which was This file was extended by parallel $as_me 20211022, which was
generated by GNU Autoconf 2.69. Invocation command line was generated by GNU Autoconf 2.69. Invocation command line was
CONFIG_FILES = $CONFIG_FILES CONFIG_FILES = $CONFIG_FILES
@ -2942,7 +2942,7 @@ _ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\ ac_cs_version="\\
parallel config.status 20210922 parallel config.status 20211022
configured by $0, generated by GNU Autoconf 2.69, configured by $0, generated by GNU Autoconf 2.69,
with options \\"\$ac_cs_config\\" with options \\"\$ac_cs_config\\"

View file

@ -1,4 +1,4 @@
AC_INIT([parallel], [20210922], [bug-parallel@gnu.org]) AC_INIT([parallel], [20211022], [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([

View file

@ -14,10 +14,6 @@ Quote of the month:
Have you heard of our lord and saviour GNU parallel? Have you heard of our lord and saviour GNU parallel?
-- kxyne @Kxyne@twitter -- kxyne @Kxyne@twitter
GNU parallel is a severely underrated tool for just spawning a
shitload of tasks. I use it every day and fucking love it.
-- Jane @serialexpjane@twitter
Installing GNU parallel is the second thing I do on any new Linux Installing GNU parallel is the second thing I do on any new Linux
machine, right after uninstalling pulseaudio. machine, right after uninstalling pulseaudio.
-- Andy Cooper @integgroll@twitter -- Andy Cooper @integgroll@twitter
@ -131,6 +127,10 @@ https://negfeedback.blogspot.com/2020/05/indispensable-command-line-tools.html
=== Used === === Used ===
GNU parallel is a severely underrated tool for just spawning a
shitload of tasks. I use it every day and fucking love it.
-- Jane @serialexpjane@twitter
Take a look at GNU Parallel. Its magnificent. Take a look at GNU Parallel. Its magnificent.
-- Siira@ycombinator.com -- Siira@ycombinator.com

View file

@ -254,31 +254,30 @@ from:tange@gnu.org
to:parallel@gnu.org, bug-parallel@gnu.org to:parallel@gnu.org, bug-parallel@gnu.org
stable-bcc: Jesse Alama <jessealama@fastmail.fm> stable-bcc: Jesse Alama <jessealama@fastmail.fm>
Subject: GNU Parallel 20211022 ('<<>>Scholz/Vilks/FacebookDown') released <<[stable]>> Subject: GNU Parallel 20211022 ('Sinclair') released
GNU Parallel 20211022 ('<<>>') <<[stable]>> has been released. It is available for download at: lbry://@GnuParallel:4 GNU Parallel 20211022 ('Sinclair') has been released. It is available for download at: lbry://@GnuParallel:4
<<No new functionality was introduced so this is a good candidate for a
stable release.>>
Quote of the month: Quote of the month:
<<>> GNU parallel is a severely underrated tool for just spawning a
shitload of tasks. I use it every day and fucking love it.
-- Jane @serialexpjane@twitter
New in this release: New in this release:
* Don't postpone output until $jobslots jobs have been started.
* Bug fixes and man page updates. * Bug fixes and man page updates.
News about GNU Parallel: News about GNU Parallel:
https://medium.com/codex/3-programs-that-will-level-up-your-bash-game-bf14e17e2291
https://towardsdatascience.com/i-summarized-100-command-line-tools-for-data-scientists-in-15-minutes-976def544ffe * How to Install GNU Parallel using Anaconda | Linux https://www.youtube.com/watch?v=UwDNVP-L0qA
https://www.incredibuild.com/blog/speed-up-your-builds-by-parallelizing
https://gist.github.com/dinh/93b936a55de9a331199d6582bc2921d2 * Install GNU Parallel from source code | Linux https://www.youtube.com/watch?v=PIyJH4ben5o
* Compiling GNU Parallel on CentOS-7 https://thelinuxcluster.com/2021/10/19/compiling-gnu-parallel-on-centos-7/
Get the book: GNU Parallel 2018 http://www.lulu.com/shop/ole-tange/gnu-parallel-2018/paperback/product-23558902.html Get the book: GNU Parallel 2018 http://www.lulu.com/shop/ole-tange/gnu-parallel-2018/paperback/product-23558902.html

View file

@ -1,7 +1,7 @@
<directory name="parallel" rev="313" vrev="1" srcmd5="6814e6bd1cf4ac6a903551ee342be431"> <directory name="parallel" rev="314" vrev="1" srcmd5="d00403f6fc8a1f4473366ad2d617dd50">
<entry name="PKGBUILD" md5="cd2a244a75df25eb5cacb8c644855902" size="936" mtime="1632345652" /> <entry name="PKGBUILD" md5="96182d24cfc529c795d9472330d63d84" size="936" mtime="1634932620" />
<entry name="parallel-20210922.tar.bz2" md5="b74b7adf0d57fea23bd09bd427e3a1d0" size="2268369" mtime="1632345652" /> <entry name="parallel-20211022.tar.bz2" md5="3cfc53da51e2d0b1ed40ea4efc80531f" size="2268584" mtime="1634932620" />
<entry name="parallel.spec" md5="881c476934d5120fa21974d985454e68" size="5630" mtime="1632345653" /> <entry name="parallel.spec" md5="94906b2c42bc554c75ce239d273faf7c" size="5630" mtime="1634932621" />
<entry name="parallel_20210922.dsc" md5="90fc749aaea89e74809e81514505bb2d" size="556" mtime="1632345653" /> <entry name="parallel_20211022.dsc" md5="f26ff185d11fb9e47a8eea57962b5b7b" size="556" mtime="1634932621" />
<entry name="parallel_20210922.tar.gz" md5="68b0e83e4652805c7c2c85e88d167245" size="2511473" mtime="1632345653" /> <entry name="parallel_20211022.tar.gz" md5="2304a31ee1027c7f7c6d89fd6290d86f" size="2512432" mtime="1634932621" />
</directory> </directory>

View file

@ -1,7 +1,7 @@
Summary: Shell tool for executing jobs in parallel Summary: Shell tool for executing jobs in parallel
Name: parallel Name: parallel
Version: 20210922 Version: 20211022
Release: 1.3 Release: 1.3
License: GPL-3.0-or-later License: GPL-3.0-or-later
Group: Productivity/File utilities Group: Productivity/File utilities

View file

@ -385,7 +385,7 @@ _parset_main() {
return 255 return 255
fi fi
if [ "$_parset_NAME" = "--version" ] ; then if [ "$_parset_NAME" = "--version" ] ; then
echo "parset 20210923 (GNU parallel `parallel --minversion 1`)" echo "parset 20211022 (GNU parallel `parallel --minversion 1`)"
echo "Copyright (C) 2007-2021 Ole Tange, http://ole.tange.dk and Free Software" echo "Copyright (C) 2007-2021 Ole Tange, http://ole.tange.dk and Free Software"
echo "Foundation, Inc." echo "Foundation, Inc."
echo "License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>" echo "License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>"

View file

@ -384,7 +384,7 @@ _parset_main() {
return 255 return 255
fi fi
if [ "$_parset_NAME" = "--version" ] ; then if [ "$_parset_NAME" = "--version" ] ; then
echo "parset 20210923 (GNU parallel `parallel --minversion 1`)" echo "parset 20211022 (GNU parallel `parallel --minversion 1`)"
echo "Copyright (C) 2007-2021 Ole Tange, http://ole.tange.dk and Free Software" echo "Copyright (C) 2007-2021 Ole Tange, http://ole.tange.dk and Free Software"
echo "Foundation, Inc." echo "Foundation, Inc."
echo "License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>" echo "License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>"

View file

@ -385,7 +385,7 @@ _parset_main() {
return 255 return 255
fi fi
if [ "$_parset_NAME" = "--version" ] ; then if [ "$_parset_NAME" = "--version" ] ; then
echo "parset 20210923 (GNU parallel `parallel --minversion 1`)" echo "parset 20211022 (GNU parallel `parallel --minversion 1`)"
echo "Copyright (C) 2007-2021 Ole Tange, http://ole.tange.dk and Free Software" echo "Copyright (C) 2007-2021 Ole Tange, http://ole.tange.dk and Free Software"
echo "Foundation, Inc." echo "Foundation, Inc."
echo "License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>" echo "License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>"

View file

@ -363,7 +363,7 @@ _parset_main() {
return 255 return 255
fi fi
if [ "$_parset_NAME" = "--version" ] ; then if [ "$_parset_NAME" = "--version" ] ; then
echo "parset 20210923 (GNU parallel `parallel --minversion 1`)" echo "parset 20211022 (GNU parallel `parallel --minversion 1`)"
echo "Copyright (C) 2007-2021 Ole Tange, http://ole.tange.dk and Free Software" echo "Copyright (C) 2007-2021 Ole Tange, http://ole.tange.dk and Free Software"
echo "Foundation, Inc." echo "Foundation, Inc."
echo "License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>" echo "License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>"

View file

@ -365,7 +365,7 @@ _parset_main() {
return 255 return 255
fi fi
if [ "$_parset_NAME" = "--version" ] ; then if [ "$_parset_NAME" = "--version" ] ; then
echo "parset 20210923 (GNU parallel `parallel --minversion 1`)" echo "parset 20211022 (GNU parallel `parallel --minversion 1`)"
echo "Copyright (C) 2007-2021 Ole Tange, http://ole.tange.dk and Free Software" echo "Copyright (C) 2007-2021 Ole Tange, http://ole.tange.dk and Free Software"
echo "Foundation, Inc." echo "Foundation, Inc."
echo "License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>" echo "License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>"

View file

@ -390,7 +390,7 @@ _parset_main() {
return 255 return 255
fi fi
if [ "$_parset_NAME" = "--version" ] ; then if [ "$_parset_NAME" = "--version" ] ; then
echo "parset 20210923 (GNU parallel `parallel --minversion 1`)" echo "parset 20211022 (GNU parallel `parallel --minversion 1`)"
echo "Copyright (C) 2007-2021 Ole Tange, http://ole.tange.dk and Free Software" echo "Copyright (C) 2007-2021 Ole Tange, http://ole.tange.dk and Free Software"
echo "Foundation, Inc." echo "Foundation, Inc."
echo "License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>" echo "License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>"

View file

@ -355,7 +355,7 @@ _parset_main() {
return 255 return 255
fi fi
if [ "$_parset_NAME" = "--version" ] ; then if [ "$_parset_NAME" = "--version" ] ; then
echo "parset 20210923 (GNU parallel `parallel --minversion 1`)" echo "parset 20211022 (GNU parallel `parallel --minversion 1`)"
echo "Copyright (C) 2007-2021 Ole Tange, http://ole.tange.dk and Free Software" echo "Copyright (C) 2007-2021 Ole Tange, http://ole.tange.dk and Free Software"
echo "Foundation, Inc." echo "Foundation, Inc."
echo "License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>" echo "License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>"

View file

@ -26,7 +26,7 @@
use strict; use strict;
use Getopt::Long; use Getopt::Long;
$Global::progname="niceload"; $Global::progname="niceload";
$Global::version = 20210923; $Global::version = 20211022;
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) {

View file

@ -2264,7 +2264,7 @@ sub check_invalid_option_combinations() {
sub init_globals() { sub init_globals() {
# Defaults: # Defaults:
$Global::version = 20210923; $Global::version = 20211022;
$Global::progname = 'parallel'; $Global::progname = 'parallel';
$::name = "GNU Parallel"; $::name = "GNU Parallel";
$Global::infinity = 2**31; $Global::infinity = 2**31;
@ -5075,8 +5075,8 @@ sub usage() {
"If you use programs that use GNU Parallel to process data for an article in a", "If you use programs that use GNU Parallel to process data for an article in a",
"scientific publication, please cite:", "scientific publication, please cite:",
"", "",
" Tange, O. (2021, September 22). GNU Parallel 20210922 ('Vindelev').", " Tange, O. (2021, October 22). GNU Parallel 20211022 ('Sinclair').",
" Zenodo. https://doi.org/10.5281/zenodo.5523272", " Zenodo. https://doi.org/10.5281/zenodo.5593566",
"", "",
# Before changing these lines, please read # Before changing these lines, please read
# https://www.gnu.org/software/parallel/parallel_design.html#Citation-notice # https://www.gnu.org/software/parallel/parallel_design.html#Citation-notice
@ -5108,8 +5108,8 @@ sub citation_notice() {
"If you use programs that use GNU Parallel to process data for an article in a", "If you use programs that use GNU Parallel to process data for an article in a",
"scientific publication, please cite:", "scientific publication, please cite:",
"", "",
" Tange, O. (2021, September 22). GNU Parallel 20210922 ('Vindelev').", " Tange, O. (2021, October 22). GNU Parallel 20211022 ('Sinclair').",
" Zenodo. https://doi.org/10.5281/zenodo.5523272", " Zenodo. https://doi.org/10.5281/zenodo.5593566",
"", "",
# Before changing these line, please read # Before changing these line, please read
# https://www.gnu.org/software/parallel/parallel_design.html#Citation-notice and # https://www.gnu.org/software/parallel/parallel_design.html#Citation-notice and
@ -5234,20 +5234,20 @@ sub citation() {
"If you use programs that use GNU Parallel to process data for an article in a", "If you use programs that use GNU Parallel to process data for an article in a",
"scientific publication, please cite:", "scientific publication, please cite:",
"", "",
"\@software{tange_2021_5523272,", "\@software{tange_2021_5593566,",
" author = {Tange, Ole},", " author = {Tange, Ole},",
" title = {GNU Parallel 20210922 ('Vindelev')},", " title = {GNU Parallel 20211022 ('Sinclair')},",
" month = Sep,", " month = Oct,",
" year = 2021,", " year = 2021,",
" note = {{GNU Parallel is a general parallelizer to run", " note = {{GNU Parallel is a general parallelizer to run",
" multiple serial command line programs in parallel", " multiple serial command line programs in parallel",
" without changing them.}},", " without changing them.}},",
" publisher = {Zenodo},", " publisher = {Zenodo},",
" doi = {10.5281/zenodo.5523272},", " doi = {10.5281/zenodo.5593566},",
" url = {https://doi.org/10.5281/zenodo.5523272}", " url = {https://doi.org/10.5281/zenodo.5593566}",
"}", "}",
"", "",
"(Feel free to use \\nocite{tange_2021_5523272})", "(Feel free to use \\nocite{tange_2021_5593566})",
"", "",
# Before changing these lines, please read # Before changing these lines, please read
# https://www.gnu.org/software/parallel/parallel_design.html#Citation-notice and # https://www.gnu.org/software/parallel/parallel_design.html#Citation-notice and

View file

@ -743,12 +743,12 @@ Even quoted newlines are parsed correctly:
When used with B<--pipe> only pass full CSV-records. When used with B<--pipe> only pass full CSV-records.
=item B<--ctag> I<str> (beta testing) =item B<--ctag> I<str>
Color tag. See B<--tag>. Color tag. See B<--tag>.
=item B<--ctagstring> I<str> (beta testing) =item B<--ctagstring> I<str>
Color tagstring. See B<--tagstring>. Color tagstring. See B<--tagstring>.
@ -2719,7 +2719,7 @@ to GNU B<parallel> giving each child its own process group, which is
then killed. Process groups are dependant on the tty. then killed. Process groups are dependant on the tty.
=item B<--tag> (beta testing) =item B<--tag>
Tag lines with arguments. Each output line will be prepended with the Tag lines with arguments. Each output line will be prepended with the
arguments and TAB (\t). When combined with B<--onall> or B<--nonall> arguments and TAB (\t). When combined with B<--onall> or B<--nonall>
@ -2730,7 +2730,7 @@ B<--tag> is ignored when using B<-u>.
B<--ctag> gives the tag a color. B<--ctag> gives the tag a color.
=item B<--tagstring> I<str> (beta testing) =item B<--tagstring> I<str>
Tag lines with a string. Each output line will be prepended with Tag lines with a string. Each output line will be prepended with
I<str> and TAB (\t). I<str> can contain replacement strings such as I<str> and TAB (\t). I<str> can contain replacement strings such as

View file

@ -122,9 +122,9 @@ GetOptions(
"help" => \$opt::dummy, "help" => \$opt::dummy,
) || exit(255); ) || exit(255);
$Global::progname = ($0 =~ m:(^|/)([^/]+)$:)[1]; $Global::progname = ($0 =~ m:(^|/)([^/]+)$:)[1];
$Global::version = 20210923; $Global::version = 20211022;
if($opt::version) { version(); exit 0; } if($opt::version) { version(); exit 0; }
@Global::sortoptions = @Global::sortoptions = grep { ! /^-D$/ }
shell_quote(@ARGV_before[0..($#ARGV_before-$#ARGV-1)]); shell_quote(@ARGV_before[0..($#ARGV_before-$#ARGV-1)]);
#if($opt::zero_terminated) { $/ = "\0"; } #if($opt::zero_terminated) { $/ = "\0"; }
@ -160,6 +160,7 @@ sub sort_files {
@Global::sortoptions, '::::', @files) || die; @Global::sortoptions, '::::', @files) || die;
my @cmd = merge(<$par>); my @cmd = merge(<$par>);
close $par; close $par;
debug(@cmd);
# The command uses <(...) so it is incompatible with /bin/sh # The command uses <(...) so it is incompatible with /bin/sh
open(my $bash,"|-","bash") || die; open(my $bash,"|-","bash") || die;
print $bash @cmd; print $bash @cmd;
@ -220,6 +221,13 @@ sub tmpfifo {
return $tmpfifo; return $tmpfifo;
} }
sub debug {
# Returns: N/A
$opt::D or return;
@_ = grep { defined $_ ? $_ : "" } @_;
print STDERR @_[1..$#_];
}
sub version() { sub version() {
# Returns: N/A # Returns: N/A
print join print join

View file

@ -600,7 +600,7 @@ $Global::Initfile && unlink $Global::Initfile;
exit ($err); exit ($err);
sub parse_options { sub parse_options {
$Global::version = 20210923; $Global::version = 20211022;
$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

View file

@ -37,7 +37,9 @@ par_filter_hosts_different_errors() {
par_timeout_retries() { par_timeout_retries() {
echo '### test --timeout --retries' echo '### test --timeout --retries'
parallel -j0 --timeout 5 --retries 3 -k ssh {} echo {} ::: 192.168.1.197 8.8.8.8 $SSHLOGIN1 $SSHLOGIN2 $SSHLOGIN3 stdout parallel -j0 --timeout 5 --retries 3 -k ssh {} echo {} \
::: 192.168.1.197 8.8.8.8 $SSHLOGIN1 $SSHLOGIN2 $SSHLOGIN3 |
grep -v 'Warning: Permanently added'
} }
par_filter_hosts_no_ssh_nxserver() { par_filter_hosts_no_ssh_nxserver() {

View file

@ -171,8 +171,8 @@ ls | parallel -j500 'sleep 1; find {} -type f | perl -ne "END{print $..\" "{=$_=
4 ab 4 ab
4 b 4 b
6 a 6 a
parallel: Warning: Only enough file handles to run 252 jobs in parallel. parallel: Warning: Only enough file handles to run 251 jobs in parallel.
parallel: Warning: Try running 'parallel -j0 -N 252 --pipe parallel -j0' parallel: Warning: Try running 'parallel -j0 -N 251 --pipe parallel -j0'
parallel: Warning: or increasing 'ulimit -n' (try: ulimit -n `ulimit -Hn`) parallel: Warning: or increasing 'ulimit -n' (try: ulimit -n `ulimit -Hn`)
parallel: Warning: or increasing 'nofile' in /etc/security/limits.conf parallel: Warning: or increasing 'nofile' in /etc/security/limits.conf
parallel: Warning: or increasing /proc/sys/fs/file-max parallel: Warning: or increasing /proc/sys/fs/file-max
@ -285,8 +285,8 @@ ls | parallel --group -j500 'sleep 1; find {} -type f | perl -ne "END{print $..\
4 ab 4 ab
4 b 4 b
6 a 6 a
parallel: Warning: Only enough file handles to run 252 jobs in parallel. parallel: Warning: Only enough file handles to run 251 jobs in parallel.
parallel: Warning: Try running 'parallel -j0 -N 252 --pipe parallel -j0' parallel: Warning: Try running 'parallel -j0 -N 251 --pipe parallel -j0'
parallel: Warning: or increasing 'ulimit -n' (try: ulimit -n `ulimit -Hn`) parallel: Warning: or increasing 'ulimit -n' (try: ulimit -n `ulimit -Hn`)
parallel: Warning: or increasing 'nofile' in /etc/security/limits.conf parallel: Warning: or increasing 'nofile' in /etc/security/limits.conf
parallel: Warning: or increasing /proc/sys/fs/file-max parallel: Warning: or increasing /proc/sys/fs/file-max

View file

@ -1249,6 +1249,9 @@ qnx /bin/sh: compgen: cannot execute - No such file or directory
qnx /bin/sh: compgen: cannot execute - No such file or directory qnx /bin/sh: compgen: cannot execute - No such file or directory
qnx /bin/sh: compgen: cannot execute - No such file or directory qnx /bin/sh: compgen: cannot execute - No such file or directory
qnx parset: Warning: Cannot figure out number of cpus. Using 1. qnx parset: Warning: Cannot figure out number of cpus. Using 1.
qnx /bin/sh: shopt: cannot execute - No such file or directory
qnx /bin/sh: shopt: cannot execute - No such file or directory
qnx /bin/sh: shopt: cannot execute - No such file or directory
qnx /bin/sh: syntax error: `(' unexpected qnx /bin/sh: syntax error: `(' unexpected
raspbian 2 2 3 2 3 4 raspbian 2 2 3 2 3 4
redhat 2 2 3 2 3 4 redhat 2 2 3 2 3 4
@ -1288,7 +1291,7 @@ netbsd var1: Undefined variable.
openbsd 1 2,1 2 3,1 2 3 4 openbsd 1 2,1 2 3,1 2 3 4
openindiana 1 2,1 2 3,1 2 3 4 openindiana 1 2,1 2 3,1 2 3 4
pidora 1 2,1 2 3,1 2 3 4 pidora 1 2,1 2 3,1 2 3 4
qnx ,, qnx 1 2,1 2 3,1 2 3 4
qnx parset: Warning: Cannot figure out number of cpus. Using 1. qnx parset: Warning: Cannot figure out number of cpus. Using 1.
raspbian 1 2,1 2 3,1 2 3 4 raspbian 1 2,1 2 3,1 2 3 4
redhat 1 2,1 2 3,1 2 3 4 redhat 1 2,1 2 3,1 2 3 4
@ -1322,6 +1325,9 @@ qnx /bin/sh: compgen: cannot execute - No such file or directory
qnx /bin/sh: compgen: cannot execute - No such file or directory qnx /bin/sh: compgen: cannot execute - No such file or directory
qnx /bin/sh: compgen: cannot execute - No such file or directory qnx /bin/sh: compgen: cannot execute - No such file or directory
qnx parset: Warning: Cannot figure out number of cpus. Using 1. qnx parset: Warning: Cannot figure out number of cpus. Using 1.
qnx /bin/sh: shopt: cannot execute - No such file or directory
qnx /bin/sh: shopt: cannot execute - No such file or directory
qnx /bin/sh: shopt: cannot execute - No such file or directory
raspbian 2,2 3,2 3 4 raspbian 2,2 3,2 3 4
redhat 2,2 3,2 3 4 redhat 2,2 3,2 3 4
scosysv 2,2 3,2 3 4 scosysv 2,2 3,2 3 4