mirror of
https://git.savannah.gnu.org/git/parallel.git
synced 2024-12-04 11:57:55 +00:00
Compare commits
3 commits
b4b3da4b0f
...
1daaf604c7
Author | SHA1 | Date | |
---|---|---|---|
1daaf604c7 | |||
05ec7b93f4 | |||
67cfb6b79f |
|
@ -19,7 +19,7 @@ torresults:
|
|||
|
||||
|
||||
torsync:
|
||||
torsocks rsync -Hazv --exclude='*.{pdf,gz,bz2,html,deb}' --exclude authorized_keys --exclude .vagrant/ --exclude actual-results --delete ./ tortest:privat/parallel/
|
||||
torsocks rsync -Hazv --exclude='*.{pdf,gz,bz2,html,deb}' --exclude authorized_keys --exclude .vagrant/ --exclude actual-results --exclude '*hwdep*' --delete ./ tortest:privat/parallel/
|
||||
make tortest
|
||||
|
||||
web:
|
||||
|
|
|
@ -156,8 +156,8 @@ am__define_uniq_tagged_files = \
|
|||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | $(am__uniquify_input)`
|
||||
DIST_SUBDIRS = $(SUBDIRS)
|
||||
am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/config.h.in COPYING \
|
||||
NEWS README TODO install-sh missing
|
||||
am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/config.h.in NEWS \
|
||||
README TODO install-sh missing
|
||||
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
||||
distdir = $(PACKAGE)-$(VERSION)
|
||||
top_distdir = $(distdir)
|
||||
|
@ -787,7 +787,7 @@ torresults:
|
|||
torsocks rsync -Hazv --progress tortest:privat/parallel/testsuite/actual-results/ testsuite/actual-results/
|
||||
|
||||
torsync:
|
||||
torsocks rsync -Hazv --exclude='*.{pdf,gz,bz2,html,deb}' --exclude authorized_keys --exclude .vagrant/ --exclude actual-results --delete ./ tortest:privat/parallel/
|
||||
torsocks rsync -Hazv --exclude='*.{pdf,gz,bz2,html,deb}' --exclude authorized_keys --exclude .vagrant/ --exclude actual-results --exclude '*hwdep*' --delete ./ tortest:privat/parallel/
|
||||
make tortest
|
||||
|
||||
web:
|
||||
|
|
31
NEWS
31
NEWS
|
@ -1,3 +1,28 @@
|
|||
20240822
|
||||
|
||||
New in this release:
|
||||
|
||||
* --match Match input source with regexp to set replacement fields.
|
||||
|
||||
* {:%fmt} Use printf formatting of replacement strings.
|
||||
|
||||
* Bug fixes and man page updates.
|
||||
|
||||
News about GNU Parallel:
|
||||
|
||||
* Powerful GNU parallel, more than a loop
|
||||
https://www.linkedin.com/pulse/powerful-gnu-parallel-more-than-loop-zhenguo-zhang-18dxc
|
||||
|
||||
* How To Increase File Transfer Speed Using Parallel Rsync?
|
||||
https://contentbase.com/blog/increase-file-transfer-speed-parallel-rsync/
|
||||
|
||||
* Converting WebP Images to PNG Using parallel and dwebp
|
||||
https://bytefreaks.net/2024/07/27
|
||||
|
||||
* Turbocharging the Box CLI with GNU Parallel
|
||||
https://medium.com/box-developer-blog/turbocharging-the-box-cli-with-gnu-parallel-ee44c48811c0
|
||||
|
||||
|
||||
20240722
|
||||
|
||||
New in this release:
|
||||
|
@ -32,9 +57,11 @@ New in this release:
|
|||
|
||||
News about GNU Parallel:
|
||||
|
||||
* Howto - Parallel: lanciare comandi in simultanea https://github.com/linuxhubit/linuxhub.it/blob/main/_posts/2024-06-14-howto-parallel-per-lanciare-comandi-in-simultanea.md
|
||||
* Howto - Parallel: lanciare comandi in simultanea
|
||||
https://github.com/linuxhubit/linuxhub.it/blob/main/_posts/2024-06-14-howto-parallel-per-lanciare-comandi-in-simultanea.md
|
||||
|
||||
* Implementing Concurrency in Shell Scripts https://dev.to/siddhantkcode/implementing-concurrency-in-shell-scripts-521o
|
||||
* Implementing Concurrency in Shell Scripts
|
||||
https://dev.to/siddhantkcode/implementing-concurrency-in-shell-scripts-521o
|
||||
|
||||
|
||||
20240522
|
||||
|
|
24
README
24
README
|
@ -57,11 +57,11 @@ document.
|
|||
|
||||
Full installation of GNU Parallel is as simple as:
|
||||
|
||||
wget https://ftpmirror.gnu.org/parallel/parallel-20240722.tar.bz2
|
||||
wget https://ftpmirror.gnu.org/parallel/parallel-20240722.tar.bz2.sig
|
||||
gpg parallel-20240722.tar.bz2.sig
|
||||
bzip2 -dc parallel-20240722.tar.bz2 | tar xvf -
|
||||
cd parallel-20240722
|
||||
wget https://ftpmirror.gnu.org/parallel/parallel-20240822.tar.bz2
|
||||
wget https://ftpmirror.gnu.org/parallel/parallel-20240822.tar.bz2.sig
|
||||
gpg parallel-20240822.tar.bz2.sig
|
||||
bzip2 -dc parallel-20240822.tar.bz2 | tar xvf -
|
||||
cd parallel-20240822
|
||||
./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
|
||||
~/bin and ~/share:
|
||||
|
||||
wget https://ftpmirror.gnu.org/parallel/parallel-20240722.tar.bz2
|
||||
wget https://ftpmirror.gnu.org/parallel/parallel-20240722.tar.bz2.sig
|
||||
gpg parallel-20240722.tar.bz2.sig
|
||||
bzip2 -dc parallel-20240722.tar.bz2 | tar xvf -
|
||||
cd parallel-20240722
|
||||
wget https://ftpmirror.gnu.org/parallel/parallel-20240822.tar.bz2
|
||||
wget https://ftpmirror.gnu.org/parallel/parallel-20240822.tar.bz2.sig
|
||||
gpg parallel-20240822.tar.bz2.sig
|
||||
bzip2 -dc parallel-20240822.tar.bz2 | tar xvf -
|
||||
cd parallel-20240822
|
||||
./configure --prefix=$HOME && make && make install
|
||||
|
||||
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
|
||||
publication please cite:
|
||||
|
||||
Tange, O. (2024, July 22). GNU Parallel 20240722 ('Assange').
|
||||
Zenodo. https://doi.org/10.5281/zenodo.12789352
|
||||
Tange, O. (2024, August 22). GNU Parallel 20240822 ('Southport').
|
||||
Zenodo. https://doi.org/10.5281/zenodo.13357237
|
||||
|
||||
Copyright (C) 2007-2022 Ole Tange, http://ole.tange.dk and Free
|
||||
Software Foundation, Inc.
|
||||
|
|
20
configure
vendored
20
configure
vendored
|
@ -1,6 +1,6 @@
|
|||
#! /bin/sh
|
||||
# Guess values for system-dependent variables and create Makefiles.
|
||||
# Generated by GNU Autoconf 2.71 for parallel 20240722.
|
||||
# Generated by GNU Autoconf 2.71 for parallel 20240822.
|
||||
#
|
||||
# Report bugs to <bug-parallel@gnu.org>.
|
||||
#
|
||||
|
@ -610,8 +610,8 @@ MAKEFLAGS=
|
|||
# Identity of this package.
|
||||
PACKAGE_NAME='parallel'
|
||||
PACKAGE_TARNAME='parallel'
|
||||
PACKAGE_VERSION='20240722'
|
||||
PACKAGE_STRING='parallel 20240722'
|
||||
PACKAGE_VERSION='20240822'
|
||||
PACKAGE_STRING='parallel 20240822'
|
||||
PACKAGE_BUGREPORT='bug-parallel@gnu.org'
|
||||
PACKAGE_URL=''
|
||||
|
||||
|
@ -1246,7 +1246,7 @@ if test "$ac_init_help" = "long"; then
|
|||
# Omit some internal or obsolete options to make the list less imposing.
|
||||
# This message is too long to be a string in the A/UX 3.1 sh.
|
||||
cat <<_ACEOF
|
||||
\`configure' configures parallel 20240722 to adapt to many kinds of systems.
|
||||
\`configure' configures parallel 20240822 to adapt to many kinds of systems.
|
||||
|
||||
Usage: $0 [OPTION]... [VAR=VALUE]...
|
||||
|
||||
|
@ -1313,7 +1313,7 @@ fi
|
|||
|
||||
if test -n "$ac_init_help"; then
|
||||
case $ac_init_help in
|
||||
short | recursive ) echo "Configuration of parallel 20240722:";;
|
||||
short | recursive ) echo "Configuration of parallel 20240822:";;
|
||||
esac
|
||||
cat <<\_ACEOF
|
||||
|
||||
|
@ -1390,7 +1390,7 @@ fi
|
|||
test -n "$ac_init_help" && exit $ac_status
|
||||
if $ac_init_version; then
|
||||
cat <<\_ACEOF
|
||||
parallel configure 20240722
|
||||
parallel configure 20240822
|
||||
generated by GNU Autoconf 2.71
|
||||
|
||||
Copyright (C) 2021 Free Software Foundation, Inc.
|
||||
|
@ -1427,7 +1427,7 @@ cat >config.log <<_ACEOF
|
|||
This file contains any messages produced by compilers while
|
||||
running configure, to aid debugging if configure makes a mistake.
|
||||
|
||||
It was created by parallel $as_me 20240722, which was
|
||||
It was created by parallel $as_me 20240822, which was
|
||||
generated by GNU Autoconf 2.71. Invocation command line was
|
||||
|
||||
$ $0$ac_configure_args_raw
|
||||
|
@ -2379,7 +2379,7 @@ fi
|
|||
|
||||
# Define the identity of the package.
|
||||
PACKAGE='parallel'
|
||||
VERSION='20240722'
|
||||
VERSION='20240822'
|
||||
|
||||
|
||||
printf "%s\n" "#define PACKAGE \"$PACKAGE\"" >>confdefs.h
|
||||
|
@ -3026,7 +3026,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
|
|||
# report actual input values of CONFIG_FILES etc. instead of their
|
||||
# values after options handling.
|
||||
ac_log="
|
||||
This file was extended by parallel $as_me 20240722, which was
|
||||
This file was extended by parallel $as_me 20240822, which was
|
||||
generated by GNU Autoconf 2.71. Invocation command line was
|
||||
|
||||
CONFIG_FILES = $CONFIG_FILES
|
||||
|
@ -3090,7 +3090,7 @@ ac_cs_config_escaped=`printf "%s\n" "$ac_cs_config" | sed "s/^ //; s/'/'\\\\\\\\
|
|||
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
|
||||
ac_cs_config='$ac_cs_config_escaped'
|
||||
ac_cs_version="\\
|
||||
parallel config.status 20240722
|
||||
parallel config.status 20240822
|
||||
configured by $0, generated by GNU Autoconf 2.71,
|
||||
with options \\"\$ac_cs_config\\"
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
AC_INIT([parallel],[20240722],[bug-parallel@gnu.org])
|
||||
AC_INIT([parallel],[20240822],[bug-parallel@gnu.org])
|
||||
AM_INIT_AUTOMAKE([-Wall -Werror foreign])
|
||||
AC_CONFIG_HEADERS([config.h])
|
||||
AC_CONFIG_FILES([
|
||||
|
|
10
doc/haikus
10
doc/haikus
|
@ -4,6 +4,12 @@
|
|||
|
||||
Quote of the month:
|
||||
|
||||
Recently executed a flawless live data migration of ~2.4pb using GNU parallel for scale and bash scripts.
|
||||
-- @mechanicker@twitter Dhruva
|
||||
|
||||
by extreme do you mean extremely slow? you could do it at least 100x faster using awk + grep + gnu parallel
|
||||
-- @ObssessedDev@twitter
|
||||
|
||||
gnu parallel is amazing
|
||||
-- Tarun Agarwal @axrawal
|
||||
|
||||
|
@ -221,6 +227,10 @@ https://negfeedback.blogspot.com/2020/05/indispensable-command-line-tools.html
|
|||
|
||||
=== Used ===
|
||||
|
||||
honestly the coolest software i've ever seen gotta be gnu parallel or
|
||||
ffmpeg, nothing like them
|
||||
-- @scootykins scoot
|
||||
|
||||
parallel is frickin great for launching jobs on multiple
|
||||
machines. Ansible and Jenkins and others may be good too but I was
|
||||
able to jump right in with parallel.
|
||||
|
|
|
@ -268,34 +268,34 @@ from:tange@gnu.org
|
|||
to:parallel@gnu.org, bug-parallel@gnu.org
|
||||
stable-bcc: Jesse Alama <jessealama@fastmail.fm>
|
||||
|
||||
Subject: GNU Parallel 20240722 ('Assange') released [stable]
|
||||
Subject: GNU Parallel 20240822 ('Southport') released
|
||||
|
||||
GNU Parallel 20240722 ('Assange') has been released. It is available for download at: lbry://@GnuParallel:4
|
||||
GNU Parallel 20240822 ('Southport') has been released. It is available for download at: lbry://@GnuParallel:4
|
||||
|
||||
Quote of the month:
|
||||
|
||||
parallel is frickin great for launching jobs on multiple
|
||||
machines. Ansible and Jenkins and others may be good too but I was
|
||||
able to jump right in with parallel.
|
||||
-- dwhite21787@reddit
|
||||
honestly the coolest software i've ever seen gotta be gnu parallel or
|
||||
ffmpeg, nothing like them
|
||||
-- @scootykins scoot
|
||||
|
||||
New in this release:
|
||||
|
||||
* No new features. This is a candidate for a stable release.
|
||||
* --match Match input source with regexp to set replacement fields.
|
||||
|
||||
* {:%fmt} Use printf formatting of replacement strings.
|
||||
|
||||
* Bug fixes and man page updates.
|
||||
|
||||
|
||||
News about GNU Parallel:
|
||||
|
||||
* Scientific Workflows at Scale using GNU Parallel https://web.cvent.com/event/f318e73c-2230-432a-a044-b75625020543/websitePage:afd80266-008e-414b-9f94-2fd9b4dd1924?session=fe79a785-ec60-414c-8d2b-c29208f53d4c&shareLink=true
|
||||
* Powerful GNU parallel, more than a loop https://www.linkedin.com/pulse/powerful-gnu-parallel-more-than-loop-zhenguo-zhang-18dxc
|
||||
|
||||
* Use GNU Parallel to render blender movies distributed by a bunch of nodes https://github.com/tfmoraes/blender_gnu_parallel_render
|
||||
* How To Increase File Transfer Speed Using Parallel Rsync? https://contentbase.com/blog/increase-file-transfer-speed-parallel-rsync/
|
||||
|
||||
* Lessons Learned from Scaling to Multi-Terabyte Datasets https://v2thegreat.com/2024/06/19/lessons-learned-from-scaling-to-multi-terabyte-datasets/
|
||||
* Converting WebP Images to PNG Using parallel and dwebp https://bytefreaks.net/2024/07/27
|
||||
|
||||
* Efisiensi Maksimal: Cara Paralelisasi Perintah di CLI Linux https://medium.com/@nfrozi/efisiensi-maksimal-cara-paralelisasi-perintah-di-cli-linux-f4fda3afe2a0
|
||||
|
||||
* Introduction to GNU parallel https://datascience.101workbook.org/06-hpc/06-parallel/01-intro-to-gnu-parallel/#gsc.tab=0
|
||||
* Turbocharging the Box CLI with GNU Parallel https://medium.com/box-developer-blog/turbocharging-the-box-cli-with-gnu-parallel-ee44c48811c0
|
||||
|
||||
|
||||
GNU Parallel - For people who live life in the parallel lane.
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
<directory name="parallel" rev="390" vrev="2" srcmd5="491dbee376ddabe7e9acf3e6dd268f7b">
|
||||
<directory name="parallel" rev="392" vrev="3" srcmd5="b0ed240db642f9220a259b0d40632326">
|
||||
<entry name="Makefile" md5="a165cdcca90c744dc5a5b17cde72ad8e" size="1182" mtime="1698101769" />
|
||||
<entry name="PKGBUILD" md5="16b2780a64ee18b0df1060680cec804c" size="714" mtime="1721531636" />
|
||||
<entry name="parallel-20240722.tar.bz2" md5="e6bdcd2fa790b2096665ed05850bbe53" size="2617438" mtime="1721531681" />
|
||||
<entry name="parallel.spec" md5="d49c3a3bd1906e68ad98cf2377b3d8ea" size="6224" mtime="1721531682" />
|
||||
<entry name="parallel_20240722.dsc" md5="13bb25db4380d128d45b57f95d1422e0" size="556" mtime="1721531683" />
|
||||
<entry name="parallel_20240722.tar.gz" md5="0229f60e3fe8aabc84dd7a908ff6bb11" size="2883193" mtime="1721531695" />
|
||||
<entry name="PKGBUILD" md5="dbc43c26061f9b183f43ac780643b362" size="714" mtime="1724271991" />
|
||||
<entry name="parallel-20240822.tar.bz2" md5="150250ba8a27dc86cab7cb9b56bca9e5" size="2682765" mtime="1724271991" />
|
||||
<entry name="parallel.spec" md5="ff9ea031c93efd66356306d83723efcd" size="6224" mtime="1724271499" />
|
||||
<entry name="parallel_20240822.dsc" md5="78549c2818624964438c8c3c6cc1fce4" size="556" mtime="1724271499" />
|
||||
<entry name="parallel_20240822.tar.gz" md5="1c4351c72c29614d1c2fa1402715956b" size="2931682" mtime="1724271992" />
|
||||
</directory>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
|
||||
Summary: Shell tool for executing jobs in parallel
|
||||
Name: parallel
|
||||
Version: 20240722
|
||||
Version: 20240822
|
||||
Release: 2.1
|
||||
License: GPL-3.0-or-later
|
||||
Group: Productivity/File utilities
|
||||
|
|
|
@ -601,7 +601,7 @@ _parset_main() {
|
|||
fi
|
||||
if [ "$_parset_NAME" = "--version" ] ; then
|
||||
# shellcheck disable=SC2006
|
||||
echo "parset 20240722 (GNU parallel `parallel --minversion 1`)"
|
||||
echo "parset 20240822 (GNU parallel `parallel --minversion 1`)"
|
||||
echo "Copyright (C) 2007-2024 Ole Tange, http://ole.tange.dk and Free Software"
|
||||
echo "Foundation, Inc."
|
||||
echo "License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>"
|
||||
|
|
|
@ -605,7 +605,7 @@ _parset_main() {
|
|||
fi
|
||||
if [ "$_parset_NAME" = "--version" ] ; then
|
||||
# shellcheck disable=SC2006
|
||||
echo "parset 20240722 (GNU parallel `parallel --minversion 1`)"
|
||||
echo "parset 20240822 (GNU parallel `parallel --minversion 1`)"
|
||||
echo "Copyright (C) 2007-2024 Ole Tange, http://ole.tange.dk and Free Software"
|
||||
echo "Foundation, Inc."
|
||||
echo "License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>"
|
||||
|
|
|
@ -601,7 +601,7 @@ _parset_main() {
|
|||
fi
|
||||
if [ "$_parset_NAME" = "--version" ] ; then
|
||||
# shellcheck disable=SC2006
|
||||
echo "parset 20240722 (GNU parallel `parallel --minversion 1`)"
|
||||
echo "parset 20240822 (GNU parallel `parallel --minversion 1`)"
|
||||
echo "Copyright (C) 2007-2024 Ole Tange, http://ole.tange.dk and Free Software"
|
||||
echo "Foundation, Inc."
|
||||
echo "License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>"
|
||||
|
|
|
@ -601,7 +601,7 @@ _parset_main() {
|
|||
fi
|
||||
if [ "$_parset_NAME" = "--version" ] ; then
|
||||
# shellcheck disable=SC2006
|
||||
echo "parset 20240722 (GNU parallel `parallel --minversion 1`)"
|
||||
echo "parset 20240822 (GNU parallel `parallel --minversion 1`)"
|
||||
echo "Copyright (C) 2007-2024 Ole Tange, http://ole.tange.dk and Free Software"
|
||||
echo "Foundation, Inc."
|
||||
echo "License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>"
|
||||
|
|
|
@ -570,7 +570,7 @@ _parset_main() {
|
|||
fi
|
||||
if [ "$_parset_NAME" = "--version" ] ; then
|
||||
# shellcheck disable=SC2006
|
||||
echo "parset 20240722 (GNU parallel `parallel --minversion 1`)"
|
||||
echo "parset 20240822 (GNU parallel `parallel --minversion 1`)"
|
||||
echo "Copyright (C) 2007-2024 Ole Tange, http://ole.tange.dk and Free Software"
|
||||
echo "Foundation, Inc."
|
||||
echo "License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>"
|
||||
|
|
|
@ -384,7 +384,7 @@ B<--session> is supported.
|
|||
=back
|
||||
|
||||
|
||||
=head2 fish (alpha testing)
|
||||
=head2 fish (beta testing)
|
||||
|
||||
=head3 Installation
|
||||
|
||||
|
|
|
@ -601,7 +601,7 @@ _parset_main() {
|
|||
fi
|
||||
if [ "$_parset_NAME" = "--version" ] ; then
|
||||
# shellcheck disable=SC2006
|
||||
echo "parset 20240722 (GNU parallel `parallel --minversion 1`)"
|
||||
echo "parset 20240822 (GNU parallel `parallel --minversion 1`)"
|
||||
echo "Copyright (C) 2007-2024 Ole Tange, http://ole.tange.dk and Free Software"
|
||||
echo "Foundation, Inc."
|
||||
echo "License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>"
|
||||
|
|
|
@ -601,7 +601,7 @@ _parset_main() {
|
|||
fi
|
||||
if [ "$_parset_NAME" = "--version" ] ; then
|
||||
# shellcheck disable=SC2006
|
||||
echo "parset 20240722 (GNU parallel `parallel --minversion 1`)"
|
||||
echo "parset 20240822 (GNU parallel `parallel --minversion 1`)"
|
||||
echo "Copyright (C) 2007-2024 Ole Tange, http://ole.tange.dk and Free Software"
|
||||
echo "Foundation, Inc."
|
||||
echo "License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>"
|
||||
|
|
|
@ -26,7 +26,7 @@
|
|||
use strict;
|
||||
use Getopt::Long;
|
||||
$Global::progname="niceload";
|
||||
$Global::version = 20240722;
|
||||
$Global::version = 20240822;
|
||||
Getopt::Long::Configure("bundling","require_order");
|
||||
get_options_from_array(\@ARGV) || die_usage();
|
||||
if($opt::version) {
|
||||
|
|
455
src/parallel
455
src/parallel
|
@ -65,7 +65,11 @@ sub set_input_source_header($$) {
|
|||
@opt::filter) {
|
||||
# Skip if undefined
|
||||
$_ or next;
|
||||
s:\{$s(|/|//|\.|/\.)\}:\{$id$1\}:g;
|
||||
s<\{$s(
|
||||
(\.\d+)? # Sub position = {3.2}
|
||||
(|/|//|\.|/\.) # Known replacement strings
|
||||
(:%.*?)? # Formatting
|
||||
)\}><\{$id$1\}>gx;
|
||||
# {=header1 ... =} => {=1 ... =}
|
||||
s:$left $s (.*?) $right:$l$id$1$r:gx;
|
||||
}
|
||||
|
@ -2039,6 +2043,7 @@ sub options_completion_hash() {
|
|||
"[Use at most max-args arguments per command line]:max-args"
|
||||
=> \$opt::max_replace_args),
|
||||
"col-sep|colsep|C=s[Column separator]:regexp" => \$opt::colsep,
|
||||
"match=s[Matching regexp]:regexp" => \@opt::match,
|
||||
"csv[Treat input as CSV-format]"=> \$opt::csv,
|
||||
("help|h[Print a summary of the options to GNU parallel and exit]"
|
||||
=> \$opt::help),
|
||||
|
@ -2793,7 +2798,7 @@ sub check_invalid_option_combinations() {
|
|||
|
||||
sub init_globals() {
|
||||
# Defaults:
|
||||
$Global::version = 20240722;
|
||||
$Global::version = 20240822;
|
||||
$Global::progname = 'parallel';
|
||||
$::name = "GNU Parallel";
|
||||
$Global::infinity = 2**31;
|
||||
|
@ -3801,7 +3806,7 @@ sub pQ($) {
|
|||
}
|
||||
|
||||
sub unquote_printf() {
|
||||
# Convert \t \n \r \000 \0
|
||||
# Convert \t \n \r \xFF \000 \0
|
||||
# Inputs:
|
||||
# $string = string with \t \n \r \num \0
|
||||
# Returns:
|
||||
|
@ -3810,7 +3815,11 @@ sub unquote_printf() {
|
|||
s/\\t/\t/g;
|
||||
s/\\n/\n/g;
|
||||
s/\\r/\r/g;
|
||||
# Hex: \xFF
|
||||
s/\\x([0-9a-fA-F]+)/eval 'sprintf "\\x'.$1.'"'/ge;
|
||||
# Octal: \007
|
||||
s/\\(\d\d\d)/eval 'sprintf "\\'.$1.'"'/ge;
|
||||
# Single digit octal: \7
|
||||
s/\\(\d)/eval 'sprintf "\\'.$1.'"'/ge;
|
||||
return $_;
|
||||
}
|
||||
|
@ -5847,8 +5856,8 @@ sub usage() {
|
|||
"If you use programs that use GNU Parallel to process data for an article in a",
|
||||
"scientific publication, please cite:",
|
||||
"",
|
||||
" Tange, O. (2024, July 22). GNU Parallel 20240722 ('Assange').",
|
||||
" Zenodo. https://doi.org/10.5281/zenodo.12789352",
|
||||
" Tange, O. (2024, August 22). GNU Parallel 20240822 ('Southport').",
|
||||
" Zenodo. https://doi.org/10.5281/zenodo.13357237",
|
||||
"",
|
||||
# Before changing these lines, please read
|
||||
# https://www.gnu.org/software/parallel/parallel_design.html#citation-notice
|
||||
|
@ -5880,8 +5889,8 @@ sub citation_notice() {
|
|||
"If you use programs that use GNU Parallel to process data for an article in a",
|
||||
"scientific publication, please cite:",
|
||||
"",
|
||||
" Tange, O. (2024, July 22). GNU Parallel 20240722 ('Assange').",
|
||||
" Zenodo. https://doi.org/10.5281/zenodo.12789352",
|
||||
" Tange, O. (2024, August 22). GNU Parallel 20240822 ('Southport').",
|
||||
" Zenodo. https://doi.org/10.5281/zenodo.13357237",
|
||||
"",
|
||||
# Before changing these line, please read
|
||||
# https://www.gnu.org/software/parallel/parallel_design.html#citation-notice and
|
||||
|
@ -6007,20 +6016,20 @@ sub citation() {
|
|||
"If you use programs that use GNU Parallel to process data for an article in a",
|
||||
"scientific publication, please cite:",
|
||||
"",
|
||||
"\@software{tange_2024_12789352,",
|
||||
"\@software{tange_2024_13357237,",
|
||||
" author = {Tange, Ole},",
|
||||
" title = {GNU Parallel 20240722 ('Assange')},",
|
||||
" month = Jul,",
|
||||
" title = {GNU Parallel 20240822 ('Southport')},",
|
||||
" month = Aug,",
|
||||
" year = 2023,",
|
||||
" note = {{GNU Parallel is a general parallelizer to run",
|
||||
" multiple serial command line programs in parallel",
|
||||
" without changing them.}},",
|
||||
" publisher = {Zenodo},",
|
||||
" doi = {10.5281/zenodo.12789352},",
|
||||
" url = {https://doi.org/10.5281/zenodo.12789352}",
|
||||
" doi = {10.5281/zenodo.13357237},",
|
||||
" url = {https://doi.org/10.5281/zenodo.13357237}",
|
||||
"}",
|
||||
"",
|
||||
"(Feel free to use \\nocite{tange_2024_12789352})",
|
||||
"(Feel free to use \\nocite{tange_2024_13357237})",
|
||||
"",
|
||||
# Before changing these lines, please read
|
||||
# https://www.gnu.org/software/parallel/parallel_design.html#citation-notice and
|
||||
|
@ -13282,6 +13291,289 @@ sub skip($) {
|
|||
package CommandLineQueue;
|
||||
|
||||
sub new($) {
|
||||
sub merge_rpl_parts(@) {
|
||||
# '{=' 'perlexpr' '=}' => '{= perlexpr =}'
|
||||
# Input:
|
||||
# @in = the @command as given by the user
|
||||
# Uses:
|
||||
# $Global::parensleft
|
||||
# $Global::parensright
|
||||
# Returns:
|
||||
# @command with parts merged to keep {= and =} as one
|
||||
my @in = @_;
|
||||
my @out;
|
||||
my $l = quotemeta($Global::parensleft);
|
||||
my $r = quotemeta($Global::parensright);
|
||||
|
||||
while(@in) {
|
||||
my $s = shift @in;
|
||||
$_ = $s;
|
||||
# Remove matching (right most) parens
|
||||
while(s/(.*)$l.*?$r/$1/os) {}
|
||||
if(/$l/o) {
|
||||
# Missing right parens
|
||||
while(@in) {
|
||||
$s .= " ".shift @in;
|
||||
$_ = $s;
|
||||
while(s/(.*)$l.*?$r/$1/os) {}
|
||||
if(not /$l/o) {
|
||||
last;
|
||||
}
|
||||
}
|
||||
}
|
||||
push @out, $s;
|
||||
}
|
||||
return @out;
|
||||
}
|
||||
|
||||
sub escape_177($) {
|
||||
# Escape \177 => \177\176
|
||||
my $s = shift;
|
||||
$Global::escape_string_present += $s =~ s/\177/\177\176/g;
|
||||
return $s;
|
||||
}
|
||||
|
||||
sub replace_parens($) {
|
||||
# Needs to match rightmost left parens (Perl defaults to leftmost)
|
||||
# to deal with: {={==} and {={==}=}
|
||||
# Replace {= -> \177< and =} -> \177>
|
||||
#
|
||||
# Complex way to do:
|
||||
# s/{=(.*)=}/\177<$1\177>/g
|
||||
# which would not work
|
||||
my $s = shift;
|
||||
$s =~ s[\Q$Global::parensleft\E # Match {=
|
||||
# Match . unless the next string is {= or =}
|
||||
# needed to force matching the shortest {= =}
|
||||
((?:(?! \Q$Global::parensleft\E|\Q$Global::parensright\E ).)*?)
|
||||
\Q$Global::parensright\E ] # Match =}
|
||||
{\177<$1\177>}gxs;
|
||||
# Now {= perlexpr =} => \177< perlexpr \177>
|
||||
return $s;
|
||||
}
|
||||
|
||||
sub replace_rpl_def($) {
|
||||
my $s = shift;
|
||||
# Replace rpl-definitions with the corresponding perl code
|
||||
for my $rpl (sort { length $b <=> length $a } keys %Global::rpl) {
|
||||
# Replace long --rpl's before short ones, as a short may be a
|
||||
# substring of a long:
|
||||
# --rpl '% s/a/b/' --rpl '%% s/b/a/'
|
||||
#
|
||||
# Replace the shorthand string (--rpl)
|
||||
# with the {= perl expr =}
|
||||
#
|
||||
# Avoid searching for shorthand strings inside existing {= perl expr =}
|
||||
#
|
||||
# Replace $$1 in {= perl expr =} with groupings in shorthand string
|
||||
#
|
||||
# parallel --rpl '{/(\.\S+)/(\.\S+)} s/$$1/$$2_REPLACE/g;' \
|
||||
# echo {/.gz/.lz} ::: UU.tar.gz
|
||||
#
|
||||
# {/.gz/.lz} =>
|
||||
# \177<
|
||||
# $_pAr_gRp1 = ".gz";
|
||||
# $_pAr_gRp2 = ".lz";
|
||||
# s/${_pAr_gRp1}/${_pAr_gRp2}_REPLACE/g;
|
||||
# \177>
|
||||
# {/.gz/.lz:%8.2s} =>
|
||||
# \177<
|
||||
# $_pAr_gRp1 = ".gz";
|
||||
# $_pAr_gRp2 = ".lz";
|
||||
# s/${_pAr_gRp1}/${_pAr_gRp2}_REPLACE/g;;
|
||||
# $_ = sprintf("%8.2f",$_);
|
||||
# \177>
|
||||
#
|
||||
sub replacer_rpl {
|
||||
my $rpl = shift;
|
||||
my $rv = $Global::rpl{$rpl};
|
||||
return replacer($rv,@_);
|
||||
}
|
||||
sub replacer {
|
||||
my $rv = shift;
|
||||
my $unchanged = shift;
|
||||
my $position = shift;
|
||||
my $grp_regexp = shift;
|
||||
my $grp_string = shift;
|
||||
my $formatstring = shift;
|
||||
$grp_string =~ /^${grp_regexp}$/ or
|
||||
::die_bug("Match failed: '$grp_regexp' on $grp_string");
|
||||
# Dummy entry to start $grp[n] at 1.
|
||||
my @grp = (1);
|
||||
if($] >= 5.010) {
|
||||
@grp = (1, @{^CAPTURE});
|
||||
} else {
|
||||
for(my $i = 1; defined $grp[$#grp]; $i++) {
|
||||
push @grp, eval '$'.$i;
|
||||
}
|
||||
}
|
||||
# replace $$1 with ${_pAr_gRp1}, $$2 with ${_pAr_gRp2}
|
||||
# in the code to be executed
|
||||
$rv =~ s/\$\$ (\d+)/\$\{_pAr_gRp$1\}/gx;
|
||||
# prepend with $_pAr_gRp1 = perlquote($1),
|
||||
my $set_args = "";
|
||||
for(my $i = 1;defined $grp[$i]; $i++) {
|
||||
$set_args .= "\$_pAr_gRp$i = \"" .
|
||||
::perl_quote_scalar($grp[$i]) . "\";";
|
||||
}
|
||||
# :%8.2f => %8.2f
|
||||
$formatstring =~ s/^://;
|
||||
my $formatcode = "";
|
||||
if(length $formatstring > 0) {
|
||||
$formatcode = ";\$_ = sprintf('$formatstring',\$_);";
|
||||
}
|
||||
if($position =~ s/\.(\d+)//) {
|
||||
# {2.3} => There must be a corresponding --match
|
||||
my $field = $1;
|
||||
my $re = $opt::match[$position-1];
|
||||
if($re=~/^\+(\d+)/) {
|
||||
# multiple --match: Reuse --match $1
|
||||
$re = $opt::match[$1-1];
|
||||
}
|
||||
if(not defined $re) {
|
||||
::error("{$position.$field} requires ".
|
||||
"corresponding --match");
|
||||
::wait_and_exit(255);
|
||||
}
|
||||
if($re =~ /\001/) {
|
||||
::error("\\001 is not supported in --match");
|
||||
::wait_and_exit(255);
|
||||
}
|
||||
$rv = "m\001$re\001 or ".
|
||||
"::warning(\"'\$_' did not match '$re'\"); ".
|
||||
"\$_ = \$$field; $rv";
|
||||
}
|
||||
::debug("rpl","match: $rv ¤ $unchanged ¤ $position ¤ ".
|
||||
"$set_args ¤ $rv ¤ $grp_regexp ¤ $formatstring\n");
|
||||
return($unchanged . "\177<" . $position . $set_args .
|
||||
$rv . $formatcode. "\177>");
|
||||
}
|
||||
if($rpl =~ /^\{/) {
|
||||
my ($prefix,$grp_regexp,$postfix) =
|
||||
# Ignore { and }
|
||||
$rpl =~ /^ \{ # {
|
||||
( [^(]* ) # Prefix (no '{' ) - e.g. %%
|
||||
( \(.*\) )? # Group capture regexp - e.g (.*)
|
||||
( [^)]* ) # Postfix (no '}' ) - e.g. end
|
||||
\} $ # }
|
||||
/xs;
|
||||
my $format_regexp = ":%.*?";
|
||||
q{
|
||||
# Regexp using named captures - kept for documentation
|
||||
# It is easier to understand than the backward compatible version
|
||||
# Look for: { position prefix group format postfix }
|
||||
while($s =~
|
||||
s{(?<unchanged> (?: ^|\177> ) (?: [^\177]*|[\177][^<>] )*?)
|
||||
\{
|
||||
(?<position> -?\d+(?:\.\d+)? \s*)?
|
||||
\Q$prefix\E
|
||||
(?<grp>$grp_regexp)
|
||||
\Q$postfix\E
|
||||
(?<format> $format_regexp)
|
||||
\}
|
||||
}
|
||||
{
|
||||
replacer_rpl($rpl, $+{unchanged},
|
||||
$+{position}, $grp_regexp,
|
||||
$+{grp}, $+{format});
|
||||
}gsex){};
|
||||
# Look for: { position prefix group postfix }
|
||||
while($s =~
|
||||
s{(?<unchanged> (?: ^|\177> ) (?: [^\177]*|[\177][^<>] )*?)
|
||||
\{
|
||||
(?<position> -?\d+(?:\.\d+)? \s*)?
|
||||
\Q$prefix\E
|
||||
(?<grp>$grp_regexp)
|
||||
\Q$postfix\E
|
||||
\}
|
||||
}
|
||||
{
|
||||
replacer_rpl($rpl, $+{unchanged},
|
||||
$+{position}, $grp_regexp,
|
||||
$+{grp});
|
||||
}gsex){}
|
||||
};
|
||||
{
|
||||
# This a rewrite of the above to perl 5.8
|
||||
# (does not use $+{...} which was introduced in 5.010
|
||||
# Look for: { position prefix group format postfix }
|
||||
while($s =~
|
||||
s{( (?: ^|\177> ) (?: [^\177]*|[\177][^<>] )*?)
|
||||
\{
|
||||
(-?\d+(?:\.\d+)? \s*)?
|
||||
\Q$prefix\E
|
||||
($grp_regexp)
|
||||
\Q$postfix\E
|
||||
($format_regexp)
|
||||
\}
|
||||
}
|
||||
{
|
||||
replacer_rpl($rpl, $1, $2, $grp_regexp, $3, $+);
|
||||
}gsex){}
|
||||
# Look for: { position prefix group postfix }
|
||||
# (Same above - except "format")
|
||||
while($s =~
|
||||
s{( (?: ^|\177> ) (?: [^\177]*|[\177][^<>] )*?)
|
||||
\{
|
||||
(-?\d+(?:\.\d+)? \s*)?
|
||||
\Q$prefix\E
|
||||
($grp_regexp)
|
||||
\Q$postfix\E
|
||||
\}
|
||||
}
|
||||
{
|
||||
replacer_rpl($rpl, $1, $2, $grp_regexp, $3);
|
||||
}gsex){}
|
||||
}
|
||||
} else {
|
||||
my ($prefix,$grp_regexp,$postfix) =
|
||||
$rpl =~ /^( [^(]* ) # Prefix - e.g. {%%
|
||||
( \(.*\) )? # Group capture regexp - e.g (.*)
|
||||
( [^)]* )$ # Postfix - e.g }
|
||||
/xs;
|
||||
q {
|
||||
# Regexp using named captures - kept for documentation
|
||||
# Look for: prefix group postfix
|
||||
while($s =~
|
||||
s{(?<unchanged> (?: ^|\177> ) (?: [^\177]*|[\177][^<>] )*?)
|
||||
(?<position>)
|
||||
\Q$prefix\E \s*
|
||||
(?<grp>$grp_regexp)
|
||||
\Q$postfix\E
|
||||
}
|
||||
{
|
||||
replacer_rpl($rpl, $+{unchanged}, $+{position},
|
||||
$grp_regexp, $+{grp});
|
||||
}gsex){};
|
||||
};
|
||||
{
|
||||
# This a rewrite of the above to perl 5.8
|
||||
# (does not use $+{...} which was introduced in 5.010
|
||||
# Look for: prefix group postfix
|
||||
while($s =~
|
||||
s{( (?: ^|\177> ) (?: [^\177]*|[\177][^<>] )*?)
|
||||
()
|
||||
\Q$prefix\E \s*
|
||||
($grp_regexp)
|
||||
\Q$postfix\E
|
||||
}
|
||||
{
|
||||
replacer_rpl($rpl, $1, $2, $grp_regexp, $3);
|
||||
}gsex){};
|
||||
}
|
||||
}
|
||||
}
|
||||
# Perl positional replacement fields {=1.2 perlexpr =}
|
||||
while($s =~
|
||||
s{ \177< # {=
|
||||
(-?\d+(?:\.\d+)\s*) # position
|
||||
(([^\177]+|\177\177)*) # perl expr
|
||||
\177> # =}
|
||||
}
|
||||
{ replacer($2, '', $1,''); }gsex){};
|
||||
return $s;
|
||||
}
|
||||
|
||||
my $class = shift;
|
||||
my $commandref = shift;
|
||||
my $read_from = shift;
|
||||
|
@ -13296,6 +13588,7 @@ sub new($) {
|
|||
my ($replacecount_ref, $len_ref);
|
||||
my @command = @$commandref;
|
||||
my $seq = 1;
|
||||
|
||||
# Replace replacement strings with {= perl expr =}
|
||||
# '{=' 'perlexpr' '=}' => '{= perlexpr =}'
|
||||
@command = merge_rpl_parts(@command);
|
||||
|
@ -13312,104 +13605,13 @@ sub new($) {
|
|||
# Skip if undefined
|
||||
defined($_) or next;
|
||||
# Escape \177 => \177\176
|
||||
$Global::escape_string_present += s/\177/\177\176/g;
|
||||
# Needs to match rightmost left parens (Perl defaults to leftmost)
|
||||
# to deal with: {={==} and {={==}=}
|
||||
# Replace {= -> \177< and =} -> \177>
|
||||
#
|
||||
# Complex way to do:
|
||||
# s/{=(.*)=}/\177<$1\177>/g
|
||||
# which would not work
|
||||
s[\Q$Global::parensleft\E # Match {=
|
||||
# Match . unless the next string is {= or =}
|
||||
# needed to force matching the shortest {= =}
|
||||
((?:(?! \Q$Global::parensleft\E|\Q$Global::parensright\E ).)*?)
|
||||
\Q$Global::parensright\E ] # Match =}
|
||||
{\177<$1\177>}gxs;
|
||||
for my $rpl (sort { length $b <=> length $a } keys %Global::rpl) {
|
||||
# Replace long --rpl's before short ones, as a short may be a
|
||||
# substring of a long:
|
||||
# --rpl '% s/a/b/' --rpl '%% s/b/a/'
|
||||
#
|
||||
# Replace the shorthand string (--rpl)
|
||||
# with the {= perl expr =}
|
||||
#
|
||||
# Avoid searching for shorthand strings inside existing {= perl expr =}
|
||||
#
|
||||
# Replace $$1 in {= perl expr =} with groupings in shorthand string
|
||||
#
|
||||
# --rpl '{/(\.\S+)/(\.\S+)} s/$$1/$$2/g;'
|
||||
# echo {/.tar/.gz} ::: UU.tar.gz
|
||||
my ($prefix,$grp_regexp,$postfix) =
|
||||
$rpl =~ /^( [^(]* ) # Prefix - e.g. {%%
|
||||
( \(.*\) )? # Group capture regexp - e.g (.*)
|
||||
( [^)]* )$ # Postfix - e.g }
|
||||
/xs;
|
||||
$grp_regexp ||= '';
|
||||
my $rplval = $Global::rpl{$rpl};
|
||||
while(s{( (?: ^|\177> ) (?: [^\177]*|[\177][^<>] )*? )
|
||||
# Don't replace after \177 unless \177>
|
||||
\Q$prefix\E $grp_regexp \Q$postfix\E}
|
||||
{
|
||||
# The start remains the same
|
||||
my $unchanged = $1;
|
||||
# Dummy entry to start at 1.
|
||||
my @grp = (1);
|
||||
# $2 = first ()-group in $grp_regexp
|
||||
# Put $2 in $grp[1], Put $3 in $grp[2]
|
||||
# so first ()-group in $grp_regexp is $grp[1];
|
||||
for(my $i = 2; defined $grp[$#grp]; $i++) {
|
||||
push @grp, eval '$'.$i;
|
||||
}
|
||||
my $rv = $rplval;
|
||||
# replace $$1 with $_pAr_gRp1, $$2 with $_pAr_gRp2
|
||||
# in the code to be executed
|
||||
$rv =~ s/\$\$ (\d+)/\$_pAr_gRp$1/gx;
|
||||
# prepend with $_pAr_gRp1 = perlquote($1),
|
||||
my $set_args = "";
|
||||
for(my $i = 1;defined $grp[$i]; $i++) {
|
||||
$set_args .= "\$_pAr_gRp$i = \"" .
|
||||
::perl_quote_scalar($grp[$i]) . "\";";
|
||||
}
|
||||
$unchanged . "\177<" . $set_args . $rv . "\177>"
|
||||
}gxes) {
|
||||
}
|
||||
# Do the same for the positional replacement strings
|
||||
$posrpl = $rpl;
|
||||
if($posrpl =~ s/^\{//) {
|
||||
# Only do this if the shorthand start with {
|
||||
$prefix=~s/^\{//;
|
||||
# Don't replace after \177 unless \177>
|
||||
while(s{( (?: ^|\177> ) (?: [^\177]*|[\177][^<>] )*? )
|
||||
\{(-?\d+) \s* \Q$prefix\E $grp_regexp \Q$postfix\E}
|
||||
{
|
||||
# The start remains the same
|
||||
my $unchanged = $1;
|
||||
my $position = $2;
|
||||
# Dummy entry to start at 1.
|
||||
my @grp = (1);
|
||||
# $3 = first ()-group in $grp_regexp
|
||||
# Put $3 in $grp[1], Put $4 in $grp[2]
|
||||
# so first ()-group in $grp_regexp is $grp[1];
|
||||
for(my $i = 3; defined $grp[$#grp]; $i++) {
|
||||
push @grp, eval '$'.$i;
|
||||
}
|
||||
my $rv = $rplval;
|
||||
# replace $$1 with $_pAr_gRp1, $$2 with $_pAr_gRp2
|
||||
# in the code to be executed
|
||||
$rv =~ s/\$\$ (\d+)/\$_pAr_gRp$1/gx;
|
||||
# prepend with $_pAr_gRp1 = perlquote($1),
|
||||
my $set_args = "";
|
||||
for(my $i = 1;defined $grp[$i]; $i++) {
|
||||
$set_args .= "\$_pAr_gRp$i = \"" .
|
||||
::perl_quote_scalar($grp[$i]) . "\";";
|
||||
}
|
||||
$unchanged . "\177<" . $position . $set_args . $rv . "\177>"
|
||||
}gxes) {
|
||||
}
|
||||
}
|
||||
}
|
||||
$_ = escape_177($_);
|
||||
# {= perl expr =} => \177< perl expr \177>
|
||||
$_ = replace_parens($_);
|
||||
# Replace rpl-definitions with the corresponding perl code
|
||||
$_ = replace_rpl_def($_);
|
||||
}
|
||||
|
||||
# Add {} if no replacement strings in @command
|
||||
($replacecount_ref, $len_ref, @command) =
|
||||
replacement_counts_and_lengths($transfer_files, $return_files,
|
||||
|
@ -13445,40 +13647,7 @@ sub new($) {
|
|||
}, ref($class) || $class;
|
||||
}
|
||||
|
||||
sub merge_rpl_parts($) {
|
||||
# '{=' 'perlexpr' '=}' => '{= perlexpr =}'
|
||||
# Input:
|
||||
# @in = the @command as given by the user
|
||||
# Uses:
|
||||
# $Global::parensleft
|
||||
# $Global::parensright
|
||||
# Returns:
|
||||
# @command with parts merged to keep {= and =} as one
|
||||
my @in = @_;
|
||||
my @out;
|
||||
my $l = quotemeta($Global::parensleft);
|
||||
my $r = quotemeta($Global::parensright);
|
||||
|
||||
while(@in) {
|
||||
my $s = shift @in;
|
||||
$_ = $s;
|
||||
# Remove matching (right most) parens
|
||||
while(s/(.*)$l.*?$r/$1/os) {}
|
||||
if(/$l/o) {
|
||||
# Missing right parens
|
||||
while(@in) {
|
||||
$s .= " ".shift @in;
|
||||
$_ = $s;
|
||||
while(s/(.*)$l.*?$r/$1/os) {}
|
||||
if(not /$l/o) {
|
||||
last;
|
||||
}
|
||||
}
|
||||
}
|
||||
push @out, $s;
|
||||
}
|
||||
return @out;
|
||||
}
|
||||
|
||||
sub replacement_counts_and_lengths($$@) {
|
||||
# Count the number of different replacement strings.
|
||||
|
|
101
src/parallel.pod
101
src/parallel.pod
|
@ -134,7 +134,7 @@ B<Bash, Csh, or Tcsh aliases>: Use B<env_parallel>.
|
|||
|
||||
B<Zsh, Fish, Ksh, and Pdksh functions and aliases>: Use B<env_parallel>.
|
||||
|
||||
=item B<{}>
|
||||
=item B<{}> (alpha testing)
|
||||
|
||||
Input line.
|
||||
|
||||
|
@ -155,7 +155,7 @@ See also: B<--plus> B<{.}> B<{/}> B<{//}> B<{/.}> B<{#}> B<{%}>
|
|||
B<{>I<n>B<}> B<{=>I<perl expression>B<=}>
|
||||
|
||||
|
||||
=item B<{.}>
|
||||
=item B<{.}> (alpha testing)
|
||||
|
||||
Input line without extension.
|
||||
|
||||
|
@ -173,7 +173,7 @@ The replacement string B<{.}> can be changed with B<--extensionreplace>
|
|||
See also: B<{}> B<--extensionreplace>
|
||||
|
||||
|
||||
=item B<{/}>
|
||||
=item B<{/}> (alpha testing)
|
||||
|
||||
Basename of input line.
|
||||
|
||||
|
@ -183,7 +183,7 @@ directory part removed.
|
|||
See also: B<{}> B<--basenamereplace>
|
||||
|
||||
|
||||
=item B<{//}>
|
||||
=item B<{//}> (alpha testing)
|
||||
|
||||
Dirname of input line.
|
||||
|
||||
|
@ -193,7 +193,7 @@ line. See B<dirname>(1).
|
|||
See also: B<{}> B<--dirnamereplace>
|
||||
|
||||
|
||||
=item B<{/.}>
|
||||
=item B<{/.}> (alpha testing)
|
||||
|
||||
Basename of input line without extension.
|
||||
|
||||
|
@ -204,7 +204,7 @@ B<{/}> and B<{.}>.
|
|||
See also: B<{}> B<--basenameextensionreplace>
|
||||
|
||||
|
||||
=item B<{#}>
|
||||
=item B<{#}> (alpha testing)
|
||||
|
||||
Sequence number of the job to run.
|
||||
|
||||
|
@ -214,7 +214,7 @@ job being run. It contains the same number as $PARALLEL_SEQ.
|
|||
See also: B<{}> B<--seqreplace>
|
||||
|
||||
|
||||
=item B<{%}>
|
||||
=item B<{%}> (alpha testing)
|
||||
|
||||
Job slot number.
|
||||
|
||||
|
@ -249,7 +249,7 @@ Notice how {%} and $PARALLEL_JOBSLOT differ in the retry run of C and D.
|
|||
See also: B<{}> B<--jobs> B<--slotreplace>
|
||||
|
||||
|
||||
=item B<{>I<n>B<}>
|
||||
=item B<{>I<n>B<}> (alpha testing)
|
||||
|
||||
Argument from input source I<n> or the I<n>'th argument.
|
||||
|
||||
|
@ -263,7 +263,7 @@ See also: B<{}> B<{>I<n>.B<}> B<{>I<n>/B<}> B<{>I<n>//B<}>
|
|||
B<{>I<n>/.B<}> B<--colsep>
|
||||
|
||||
|
||||
=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
|
||||
extension.
|
||||
|
@ -278,7 +278,7 @@ extension removed.
|
|||
See also: B<{>I<n>B<}> 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.
|
||||
|
||||
|
@ -292,7 +292,7 @@ directory (if any) removed.
|
|||
See also: B<{>I<n>B<}> 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.
|
||||
|
||||
|
@ -305,7 +305,7 @@ the I<n>'th argument (when used with B<-N>). See B<dirname>(1).
|
|||
See also: B<{>I<n>B<}> 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
|
||||
without extension.
|
||||
|
@ -321,7 +321,7 @@ directory (if any) and extension removed.
|
|||
See also: B<{>I<n>B<}> B<{/.}>
|
||||
|
||||
|
||||
=item B<{=>I<perl expression>B<=}>
|
||||
=item B<{=>I<perl expression>B<=}> (alpha testing)
|
||||
|
||||
Replace with calculated I<perl expression>.
|
||||
|
||||
|
@ -438,7 +438,7 @@ See also: B<--rpl> B<--parens> B<{}> B<{=>I<n> I<perl expression>B<=}>
|
|||
B<--filter>
|
||||
|
||||
|
||||
=item B<{=>I<n> I<perl expression>B<=}>
|
||||
=item B<{=>I<n> I<perl expression>B<=}> (alpha testing)
|
||||
|
||||
Positional equivalent to B<{=>I<perl expression>B<=}>.
|
||||
|
||||
|
@ -447,6 +447,27 @@ To understand positional replacement strings see B<{>I<n>B<}>.
|
|||
See also: B<{=>I<perl expression>B<=}> B<{>I<n>B<}>
|
||||
|
||||
|
||||
=item B<{>I<rpl>:I<format>B<}> (alpha testing)
|
||||
|
||||
Format replacement string.
|
||||
|
||||
Use I<format> to format I<rpl>. I<format> is a format string used in
|
||||
B<printf>. I<rpl> is a replacement string.
|
||||
|
||||
Examples:
|
||||
|
||||
{#:%04d} - Job number ({#}) with 4 digits prepended with 0
|
||||
{%:%02d} - Job slot ({%}) with 2 digits prepended with 0
|
||||
{:%6s} - Input line ({}) right aligned 6 chars wide
|
||||
{/:%12s} - Basename ({/}) right aligned 12 chars wide
|
||||
{2:%8.2f} - Second input source ({2}) 8 chars wide, 2 decimals
|
||||
|
||||
Format strings also works on replacement strings defined via B<--rpl>
|
||||
that start with '{'.
|
||||
|
||||
See also: B<{}> B<{>I<n>B<}> B<--rpl>
|
||||
|
||||
|
||||
=item B<:::> I<arguments>
|
||||
|
||||
Use arguments on the command line as input source.
|
||||
|
@ -840,7 +861,7 @@ B<--trim n>.
|
|||
I<regexp> is a Perl Regular Expression:
|
||||
https://perldoc.perl.org/perlre.html
|
||||
|
||||
See also: B<--csv> B<{>I<n>B<}> B<--trim> B<--link>
|
||||
See also: B<--csv> B<{>I<n>B<}> B<--trim> B<--link> B<--match>
|
||||
|
||||
|
||||
=item B<--combineexec> I<name>
|
||||
|
@ -921,7 +942,7 @@ See also: B<--compress>
|
|||
|
||||
Treat input as CSV-format.
|
||||
|
||||
B<--colsep> sets the field delimiter. It works very much like
|
||||
B<--colsep> sets the field delimiter. B<--csv> works very much like
|
||||
B<--colsep> except it deals correctly with quoting. Compare:
|
||||
|
||||
echo '"1 big, 2 small","2""x4"" plank",12.34' |
|
||||
|
@ -936,9 +957,9 @@ Even quoted newlines are parsed correctly:
|
|||
echo 'Line 2 in field 1";value 2') |
|
||||
parallel --csv --colsep ';' echo Field 1: {1} Field 2: {2}
|
||||
|
||||
When used with B<--pipe> only pass full CSV-records.
|
||||
When used with B<--pipe> it will only pass full CSV-records.
|
||||
|
||||
See also: B<--pipe> B<--link> B<{>I<n>B<}> B<--colsep> B<--header>
|
||||
See also: B<--pipe> B<--link> B<{>I<n>B<}> B<--colsep> B<--header> B<--match>
|
||||
|
||||
|
||||
=item B<--ctag> (obsolete: use B<--color> B<--tag>)
|
||||
|
@ -979,10 +1000,10 @@ See also: TIME POSTFIXES B<--retries> B<--ssh-delay>
|
|||
|
||||
=item B<-d> I<delim>
|
||||
|
||||
Input items are terminated by I<delim>.
|
||||
Input records are terminated by I<delim>.
|
||||
|
||||
The specified delimiter may be characters, C-style character escapes
|
||||
such as \n, or octal or hexadecimal escape codes. Octal and
|
||||
such as \n, or octal (\012) or hexadecimal (\x0A) escape codes. Octal and
|
||||
hexadecimal escape codes are understood as for the printf command.
|
||||
|
||||
See also: B<--colsep>
|
||||
|
@ -1775,6 +1796,38 @@ If in doubt use B<-X> as that will most likely do what is needed.
|
|||
See also: B<-X> B<--xargs>
|
||||
|
||||
|
||||
=item B<--match> I<regexp> (alpha testing)
|
||||
|
||||
Match input source with regexp to set replacement fields.
|
||||
|
||||
With B<--match> you can often avoid pre-processing your input with
|
||||
B<awk> or similar to extract the relevant fields.
|
||||
|
||||
You can access each capture group i.e. the parenthesis in regexp
|
||||
'(...)' with a replacement field. The replacement fields are named
|
||||
B<{m.n}> where m is the input source and n is the capture group
|
||||
number:
|
||||
|
||||
parallel --match '(.*),(.*)_(.*)' echo {1.2} {1.3} {1.1} \
|
||||
::: Gold,Heart_of
|
||||
parallel --match '(.*),' --match '([a-z]+)' echo {1.1}{2.1} \
|
||||
::: Milli,bar ::: 10ways
|
||||
|
||||
To reuse a B<--match> simply use B<+n> where n is the input
|
||||
source. E.g. B<+2> for the second:
|
||||
|
||||
parallel --match +2 --match '([A-Za-z]+)' echo {1.1} {2.1} \
|
||||
::: /Improbability/ ::: 10drive
|
||||
|
||||
To only set B<--match> for input source 2, make a dummy B<--match> for
|
||||
input source 1:
|
||||
|
||||
parallel --match '' --match '([a-z]+)' echo {1} {2.1} \
|
||||
::: Telephone ::: 10sanitizer
|
||||
|
||||
See also: B<{>I<n>B<}> B<--colsep>
|
||||
|
||||
|
||||
=item B<--memfree> I<size>
|
||||
|
||||
Minimum memory free when starting another job.
|
||||
|
@ -2738,10 +2791,10 @@ the replacement string and adding a regular expression between the
|
|||
parenthesis. The matching string will be inserted as $$1:
|
||||
|
||||
parallel --rpl '{%(.*?)} s/$$1//' echo {%.tar.gz} ::: my.tar.gz
|
||||
parallel --rpl '{:%(.+?)} s:$$1(\.[^/]+)*$::' \
|
||||
echo {:%_file} ::: my_file.tar.gz
|
||||
parallel -n3 --rpl '{/:%(.*?)} s:.*/(.*)$$1(\.[^/]+)*$:$1:' \
|
||||
echo job {#}: {2} {2.} {3/:%_1} ::: a/b.c c/d.e f/g_1.h.i
|
||||
parallel --rpl '{:+(.+?)} s:$$1(\.[^/]+)*$::' \
|
||||
echo {:+_file} ::: my_file.tar.gz
|
||||
parallel -n3 --rpl '{/:+(.*?)} s:.*/(.*)$$1(\.[^/]+)*$:$1:' \
|
||||
echo job {#}: {2} {2.} {3/:+_1} ::: a/b.c c/d.e f/g_1.h.i
|
||||
|
||||
You can even use multiple matches:
|
||||
|
||||
|
|
|
@ -788,8 +788,10 @@ mixes. Combined with B<paexec_reorder> output order can be the same as
|
|||
input order. In certain situations B<paexec> will eat the last newline
|
||||
of standard output.
|
||||
|
||||
There seems to be no way to make 4 jobs run on a remote server with 4
|
||||
cores and 16 jobs on a remote server with 16 cores.
|
||||
There seems to be no way to have the number og jobs depend on the
|
||||
number of CPU threads in a mixed server setup: E.g run 4 jobs on a
|
||||
remote server with 4 cores and 16 jobs on a remote server with 16
|
||||
cores.
|
||||
|
||||
|
||||
=head3 EXAMPLES FROM man paexec
|
||||
|
@ -893,7 +895,7 @@ B<parallel>.
|
|||
awk 'BEGIN {print toupper(ARGV[1])}' < tasks
|
||||
|
||||
13$ paexec -Z240 -x -t ssh -n 'server1 badhostname server2' \
|
||||
-c "awk 'BEGIN {print toupper(ARGV[1])}' " < tasks
|
||||
-c "awk 'BEGIN {print toupper(ARGV[1])}' " < tasks
|
||||
|
||||
13$ parallel --filter-hosts -S 'server1,badhostname,server2' \
|
||||
"awk 'BEGIN {print toupper(ARGV[1])}' " < tasks
|
||||
|
@ -1025,7 +1027,7 @@ B<parallel>.
|
|||
time -p paexec -c ~/bin/calc -n +2 -xg | grep -v success
|
||||
|
||||
20$ printf 'small1\nsmall2\nsmall3\nsmall4\nsmall5\nhuge\n' |
|
||||
time -p parallel -j2 ~/bin/calc | grep -v success
|
||||
time -p parallel -j2 ~/bin/calc | grep -v success
|
||||
|
||||
21$ printf 'small1\nsmall2\nsmall3\nsmall4\nweight: huge 6\n' |
|
||||
time -p paexec -c ~/bin/calc -n +2 -x -W1 | grep -v success
|
||||
|
@ -1504,10 +1506,67 @@ user uses Rust parallel it will overwrite this file.
|
|||
If /tmp/parallel runs full during the run, Rust parallel does not
|
||||
report this, but finishes with success - thereby risking data loss.
|
||||
|
||||
|
||||
https://github.com/mmstick/parallel
|
||||
(Last checked: 2016-08)
|
||||
|
||||
|
||||
=head2 DIFFERENCES BETWEEN parallelion AND GNU Parallel
|
||||
|
||||
Summary (see legend above):
|
||||
|
||||
=over
|
||||
|
||||
=item - (I2) - I4 - - -
|
||||
|
||||
=item M1 - M3 - - M6
|
||||
|
||||
=item - O2 O3 - O5 (O6) - x x
|
||||
|
||||
=item E1 - - (E4) E5 - - E8 ?
|
||||
|
||||
=item - - - - - - - - -
|
||||
|
||||
=item - -
|
||||
|
||||
=back
|
||||
|
||||
I2: I was unable to cannot get B<parallelion> to read from a file.
|
||||
|
||||
O6: There is extra output if a job fails.
|
||||
|
||||
E4: The default number of parallel jobs is the number of cpu threads.
|
||||
|
||||
-- is needed to force args not be parsed as options:
|
||||
|
||||
parallelion 'echo {}' -- Runs without -v
|
||||
|
||||
parallelion 'echo {}' Runs with -v
|
||||
|
||||
The commands are run through B<ion> shell.
|
||||
|
||||
Ctrl-C does not stop processing.
|
||||
|
||||
The B<--log> is similar to syslog - not a table.
|
||||
|
||||
The progressbar is nice.
|
||||
|
||||
B<parallelion> is fast: 0.1 ms/job. Similar to B<parallel-bash>.
|
||||
|
||||
=head3 EXAMPLES FROM parallelion
|
||||
|
||||
1$ parallelion -progress 'echo {}' {1..1000}
|
||||
|
||||
1$ parallel --bar echo {} ::: {1..1000}
|
||||
|
||||
2$ parallelion -progress 'echo {}' $(seq 1 999)
|
||||
|
||||
2$ seq 1 999 | parallel --bar echo
|
||||
|
||||
https://gitlab.redox-os.org/redox-os/parallel
|
||||
(Last checked: 2024-08)
|
||||
|
||||
|
||||
=head2 DIFFERENCES BETWEEN Rush AND GNU Parallel
|
||||
|
||||
B<rush> (https://github.com/shenwei356/rush) is written in Go and
|
||||
|
@ -1972,6 +2031,8 @@ https://github.com/gdm85/coshell
|
|||
|
||||
=head2 DIFFERENCES BETWEEN spread AND GNU Parallel
|
||||
|
||||
Summary (see legend above):
|
||||
|
||||
=over
|
||||
|
||||
=item - - - I4 - - I7
|
||||
|
@ -3591,7 +3652,7 @@ not, all the long jobs may end up in the same queue, so you may see:
|
|||
time parallel -P4 sleep {}
|
||||
(7 seconds)
|
||||
$ printf "%b\n" 1 1 1 4 1 1 1 4 1 1 1 4 |
|
||||
time ./parallel-bash.bash -p 4 -c sleep {}
|
||||
time parallel-bash -p 4 -c sleep {}
|
||||
(12 seconds)
|
||||
|
||||
Because it uses bash lists, the total number of jobs is limited to
|
||||
|
|
|
@ -179,6 +179,11 @@ each file should be named the first letter of the file name.
|
|||
|
||||
parallel 'mkdir -p {=s/(.).*/$1/=}; mv {} {=s/(.).*/$1/=}' ::: *
|
||||
|
||||
In practice you would probably not use a perl replacement string but
|
||||
instead B<--match>:
|
||||
|
||||
parallel --match '(.)' 'mkdir -p {1.1} && mv {} {1.1}' ::: *
|
||||
|
||||
|
||||
=head2 EXAMPLE: Composed command with multiple input sources
|
||||
|
||||
|
@ -189,6 +194,97 @@ You have a dir with files named as 24 hours in 5 minute intervals:
|
|||
::: {00..23} ::: {00..55..5}
|
||||
|
||||
|
||||
=head2 EXAMPLE: Match parts of input source
|
||||
|
||||
Match first initial and last name:
|
||||
|
||||
parallel --match '(.).* (.*)' echo {1.1}. {1.2} \
|
||||
::: "Arthur Dent" "Ford Prefect" "Tricia McMillan" "Zaphod Beeblebrox"
|
||||
|
||||
Re-arrange (stupid) US date format into (nice) ISO-8601:
|
||||
|
||||
parallel --match '(.*)/(.*)/(.*)' echo {1.3}-{1.1:%02d}-{1.2:%02d} \
|
||||
::: 12/31/1969 1/19/2038 6/1/2002
|
||||
|
||||
Match url into domain and path:
|
||||
|
||||
parallel --match 'https://(.*?)/(.*)' echo Domain: {1.1} Path: {1.2} \
|
||||
::: https://example.com/dir/page https://gnu.org/s/parallel
|
||||
|
||||
Get URLs into dirs named by 2nd level domain name,
|
||||
e.g. https://www.gnu.org/s/parallel will be put into the dir gnu.org.
|
||||
|
||||
cat urls | parallel --match '//[^/]*?([^/.]+\.[^/.]+)/' \
|
||||
'mkdir -p {1.1} && cd {1.1} && wget {}'
|
||||
|
||||
Match host.domain:port from a log file:
|
||||
|
||||
cat log |
|
||||
parallel --match '\b([a-z0-9.]+):(\d+)\b' echo host:{1.1} port:{1.2}
|
||||
|
||||
Reorder comma-separated values:
|
||||
|
||||
parallel --match '(.*),(.*)' echo Second: {1.2}, First: {1.1} \
|
||||
::: "Arthur,Babel fish" "Adams,Betelgeuse" "Arcturan,Bistro"
|
||||
|
||||
Capitalize word:
|
||||
|
||||
parallel --match '([a-z])([a-z]*) ([a-z])([a-z]*)' \
|
||||
echo '{=1.1 $_=uc($_) =}{1.2} {=1.3 $_=uc($_) =}{1.4}' \
|
||||
::: "pan galactic" "gargle blaster"
|
||||
|
||||
Make an international dialing prefix table:
|
||||
|
||||
dial=(
|
||||
"DK(Denmark) 00,45"
|
||||
"US(United States) 011,1"
|
||||
"JP(Japan) 010,81"
|
||||
"AU(Australia) 0011,61"
|
||||
"CA(Canada) 011,1"
|
||||
"RU(Russia) 810,7"
|
||||
"TH(Thailand) 001,66"
|
||||
"TW(Taiwan) 002,886"
|
||||
)
|
||||
parallel --match '(.*)\((.*)\) (.*),(.*)' --match +1 \
|
||||
echo From {1.1}/{1.2} to {2.1}/{2.2} dial {1.3}-{2.4} \
|
||||
::: "${dial[@]}" ::: "${dial[@]}"
|
||||
|
||||
Note how input source 2 reuses the B<--match> from input source 1.
|
||||
|
||||
|
||||
=head2 EXAMPLE: Replacement fields from CSV file with headers
|
||||
|
||||
This is an advanced example. You have:
|
||||
|
||||
Date;Name;Location
|
||||
3/8/1978;"Beeblebrox; Zaphod";"Betelgeuse V"
|
||||
10/12/1979;"Dent; Arthur";Earth
|
||||
1/5/1981;Slartibartfast;Magrathea
|
||||
|
||||
You want:
|
||||
|
||||
Z. Beeblebrox: 1978-03-08/BET
|
||||
A. Dent: 1979-10-12/EAR
|
||||
Slartibartfast: 1981-01-05/MAG
|
||||
|
||||
Run:
|
||||
|
||||
parallel --csv --colsep ';' --header : --match "(\d+)/(\d+)/(\d+)" \
|
||||
--match "^([^;]+)(; (.))?" --match "(...)" \
|
||||
echo '{=Name.3 s/(.)/$1. /;=}'{Name.1}: \
|
||||
{Date.3}-{Date.1:%02d}-{Date.2:%02d}/'{=Location.1 $_=uc =}' \
|
||||
:::: people.csv
|
||||
|
||||
B<--csv> parses the input as CSV with B<--colsep ;> as the separator -
|
||||
dealing correctly with quoted strings. The input is split into 3
|
||||
columns. B<--header :> makes the columns available as
|
||||
B<{>I<columnname>B<}>. Each column has their corresponding B<--match>
|
||||
so each field can be accessed as
|
||||
B<{>I<columnname>.I<#>B<}>. B<s/(.)/$1. /> is a perl expression that
|
||||
appends ". " if the name has an initial. B<:%02d> formats single
|
||||
digits as two digits. B<uc> upper cases the argument.
|
||||
|
||||
|
||||
=head2 EXAMPLE: Calling Bash functions
|
||||
|
||||
If the composed command is longer than a line, it becomes hard to
|
||||
|
@ -319,6 +415,10 @@ If the barcode does not contain '_R1', you can do:
|
|||
|
||||
parallel --plus myprocess {} {/_R1/_R2} ::: *_R1.fq.gz
|
||||
|
||||
Or you can use B<--match>:
|
||||
|
||||
parallel --match '(.*)_R1(.*)' myprocess {} {1.1}_R2{1.2} ::: *_R1.fq.gz
|
||||
|
||||
|
||||
=head2 EXAMPLE: Removing strings from the argument
|
||||
|
||||
|
@ -341,6 +441,10 @@ To remove a string anywhere you can use regular expressions with
|
|||
|
||||
parallel --plus echo {/demo_/} ::: demo_mycode remove_demo_here
|
||||
|
||||
You can often also use B<--match>:
|
||||
|
||||
parallel --match '(.*)demo_(.*)' echo {1.1}{1.2} ::: demo_mycode remove_demo_here
|
||||
|
||||
|
||||
=head2 EXAMPLE: Download 24 images for each of the past 30 days
|
||||
|
||||
|
@ -430,6 +534,7 @@ downloads 10 videos in parallel.
|
|||
B<{=> and B<=}> mark a perl expression. B<pQ> perl-quotes the
|
||||
string. B<date +%FT%T> is the date in ISO8601 with time.
|
||||
|
||||
|
||||
=head2 EXAMPLE: Save output in ISO8601 dirs
|
||||
|
||||
Save output from B<ps aux> every second into dirs named
|
||||
|
@ -446,7 +551,7 @@ and the rest a ' ' a perl expression is used to look at the 3rd input
|
|||
source. If the value modulo 2 is 1: Use ":" otherwise use " ":
|
||||
|
||||
parallel -k echo {1}'{=3 $_=$_%2?":":" "=}'{2}{3} \
|
||||
::: {0..12} ::: {0..5} ::: {0..9}
|
||||
::: {0..23} ::: {0..5} ::: {0..9}
|
||||
|
||||
|
||||
=head2 EXAMPLE: Aggregating content of files
|
||||
|
|
|
@ -137,7 +137,7 @@ GetOptions(
|
|||
"help" => \$opt::dummy,
|
||||
) || exit(255);
|
||||
$Global::progname = ($0 =~ m:(^|/)([^/]+)$:)[1];
|
||||
$Global::version = 20240722;
|
||||
$Global::version = 20240822;
|
||||
if($opt::version) { version(); exit 0; }
|
||||
# Remove -D and --parallel=N
|
||||
my @s = (grep { ! /^-D$|^--parallel=\S+$/ }
|
||||
|
|
2
src/sql
2
src/sql
|
@ -670,7 +670,7 @@ $Global::Initfile && unlink $Global::Initfile;
|
|||
exit ($err);
|
||||
|
||||
sub parse_options {
|
||||
$Global::version = 20240722;
|
||||
$Global::version = 20240822;
|
||||
$Global::progname = 'sql';
|
||||
|
||||
# This must be done first as this may exec myself
|
||||
|
|
|
@ -10,14 +10,21 @@ install_packages() {
|
|||
INSTALL=${INSTALL:-"sudo apt -y install"}
|
||||
|
||||
# The testsuite depends on this:
|
||||
test_pkgs="imagemagick expect autossh sshpass jq libpod-simple-perl"
|
||||
test_pkgs="$test_pkgs pod2pdf gawk lua5.3 clisp php-cli nodejs"
|
||||
test_pkgs="$test_pkgs mono-csharp-shell libevent-dev tcl libtext-csv-perl"
|
||||
test_pkgs="imagemagick expect pv zenity"
|
||||
test_pkgs="$test_pkgs autossh sshpass lsh-client lsh-utils jq"
|
||||
test_pkgs="$test_pkgs libpod-simple-perl libtext-csv-perl"
|
||||
test_pkgs="$test_pkgs libtest-nowarnings-perl pod2pdf"
|
||||
test_pkgs="$test_pkgs xemacs21"
|
||||
test_pkgs="$test_pkgs gawk lua5.3 clisp php-cli nodejs guile-3.0 fsharp"
|
||||
test_pkgs="$test_pkgs mono-csharp-shell octave openjdk-11-jdk-headless tcl"
|
||||
test_pkgs="$test_pkgs racket libevent-dev python-is-python3"
|
||||
test_pkgs="$test_pkgs xterm libc6-i386 libcrypt1:i386 virtualbox"
|
||||
test_pkgs="$test_pkgs libtest-nowarnings-perl xemacs21 pv zenity"
|
||||
test_pkgs="$test_pkgs lsh-client lsh-utils torsocks net-tools python-is-python3"
|
||||
test_pkgs="$test_pkgs reiserfsprogs btrfs-progs exfatprogs f2fs-tools xfsprogs"
|
||||
test_pkgs="$test_pkgs torsocks net-tools"
|
||||
test_pkgs="$test_pkgs reiserfsprogs btrfs-progs exfatprogs f2fs-tools"
|
||||
test_pkgs="$test_pkgs xfsprogs"
|
||||
|
||||
test_snap_pkgs="groovy julia"
|
||||
|
||||
# Debian package
|
||||
packaging_pkgs="dpkg-dev build-essential debhelper osc cvs automake"
|
||||
packaging_pkgs="$packaging_pkgs python3-m2crypto alien python3-pip"
|
||||
|
@ -30,14 +37,14 @@ install_packages() {
|
|||
sql_pkgs="$sql_pkgs libdbd-mysql-perl rlwrap"
|
||||
|
||||
# Compression
|
||||
compression_pkgs="zstd clzip liblz4-tool lzop pigz pixz gzip plzip pbzip2"
|
||||
compression_pkgs="zstd clzip lz4 lzop pigz pixz gzip plzip pbzip2"
|
||||
compression_pkgs="$compression_pkgs lzma xz-utils lzip bzip2 lbzip2 lrzip"
|
||||
compression_pkgs_missing="pxz"
|
||||
|
||||
# Shells
|
||||
# (csh = bsd-csh that is broken)
|
||||
# (ksh93 gone)
|
||||
shell_pkgs="ash dash fdclone fish fizsh ksh ksh93u+m mksh posh rc rush sash"
|
||||
# (ash ksh93 gone)
|
||||
shell_pkgs="dash fdclone fish fizsh ksh ksh93u+m mksh posh rc rush sash"
|
||||
shell_pkgs="$shell_pkgs tcsh yash zsh busybox-static"
|
||||
|
||||
# Databases
|
||||
|
@ -59,6 +66,13 @@ install_packages() {
|
|||
echo Packages missing
|
||||
return 1
|
||||
fi
|
||||
if sudo parallel -j1 snap install --classic ::: $test_snap_pkgs; then
|
||||
# OK
|
||||
true
|
||||
else
|
||||
echo Packages missing: $test_snap_pkgs
|
||||
return 1
|
||||
fi
|
||||
if parallel -j1 --tag --halt now,success=1 $INSTALL ::: $alt_database ; then
|
||||
# OK
|
||||
true
|
||||
|
@ -85,7 +99,11 @@ install_sqlite2() {
|
|||
cd /tmp/sqlite2
|
||||
git clone https://github.com/sqlite/sqlite
|
||||
cd sqlite
|
||||
git checkout a2cfd57491ca357eda2a206cbcd94c6e6c7d7d93
|
||||
git checkout cc83b6e071ba69943f175a038d2625ae3d6abf47
|
||||
# New GCC needs <stdlib.h>, so add that
|
||||
perl -i -pe \
|
||||
's/echo (.#include <stdio.h>)(.)/printf $1\\n#include <stdlib.h>\\n$2/' \
|
||||
Makefile.in
|
||||
./configure --prefix=/usr/local && make -j && sudo make install
|
||||
}
|
||||
|
||||
|
@ -131,7 +149,7 @@ install_oracle_client() {
|
|||
echo 'export ORACLE_SID=XE' >> ~/.bashrc
|
||||
fi
|
||||
# libaio
|
||||
sudo apt install libaio1t64
|
||||
sudo apt install libaio1 || sudo apt install libaio1t64
|
||||
sudo ln -s libaio.so.1t64 /usr/lib/x86_64-linux-gnu/libaio.so.1
|
||||
perl -MCPAN -e 'install DBD::Oracle'
|
||||
# TODO set up vagrant oracle server
|
||||
|
@ -139,6 +157,7 @@ install_oracle_client() {
|
|||
(
|
||||
cd vagrant-projects/OracleDatabase/23.4.0-Free
|
||||
echo export VM_ORACLE_PWD=`goodpasswd` >> ~/.passwords
|
||||
echo export 'ORACLE_PWD=$VM_ORACLE_PWD' >> ~/.passwords
|
||||
. ~/.passwords
|
||||
vagrant up
|
||||
)
|
||||
|
@ -275,7 +294,7 @@ add_server_to_hosts() {
|
|||
}
|
||||
|
||||
vagrant_up() {
|
||||
parallel -j0 --ll --tag 'cd {};vagrant up' ::: vagrant/*/*
|
||||
parallel -j0 --ll --tag 'cd {//};vagrant up' ::: vagrant/*/*/Vagrantfile
|
||||
# After this you should be able to 'vagrant ssh'
|
||||
}
|
||||
|
||||
|
@ -346,9 +365,9 @@ add_key_to_auth_key() {
|
|||
cat ~/.ssh/*pub >> ~/.ssh/authorized_keys
|
||||
parallel --tag --timeout 20 sshaddvagrant ::: $vagrant_names parallel-server{1..4}
|
||||
parallel --tag --timeout 20 sshaddlocal ::: $ips lo localhost
|
||||
parallel --tag --timeout 5 ssh vagrant@{} echo OK ::: $vagrant_names parallel-server{1..4}
|
||||
parallel --tag --timeout 5 ssh vagrant@{} echo ssh vagrant@{} OK ::: $vagrant_names parallel-server{1..4}
|
||||
parallel ssh vagrant@{} 'echo "PATH=\$PATH:\$HOME/bin" >> .bashrc' ::: $vagrant_names
|
||||
parallel --tag --timeout 5 ssh {} echo OK ::: $ips lo localhost
|
||||
parallel --tag --timeout 5 ssh {} echo ssh {} OK ::: $ips lo localhost
|
||||
}
|
||||
|
||||
install_rsync_on_vagrant() {
|
||||
|
@ -503,8 +522,9 @@ lsh_setup() {
|
|||
mkdir -p .lsh
|
||||
rm -f ".lsh/yarrow-seed-file"
|
||||
lsh-make-seed -o ".lsh/yarrow-seed-file"
|
||||
lsh -c aes256-ctr --sloppy-host-authentication \
|
||||
--capture-to ~/.lsh/host-acls -l $user server echo Added host-auth
|
||||
# TODO need to enter 'y' here
|
||||
lsh --sloppy-host-authentication \
|
||||
--capture-to ~/.lsh/host-acls -l $user $server echo Added host-auth
|
||||
rm -f .lsh/identity .lsh/identity.pub
|
||||
lsh-keygen | lsh-writekey -c none
|
||||
export_key_to_local_users() {
|
||||
|
@ -655,6 +675,8 @@ rsync_versions() {
|
|||
autoreconf -fiv
|
||||
# strlcat strlcpy
|
||||
perl -i -pe 's/void (strlc..)/void _$1/' util.c
|
||||
# Force FNM_CASEFOLD to be set
|
||||
export CFLAGS='-Wno-incompatible-pointer-types -D_GNU_SOURCE=1'
|
||||
configure_make_proto_install $1
|
||||
}
|
||||
build-v3.0.0() {
|
||||
|
@ -685,7 +707,7 @@ rsync_versions() {
|
|||
|
||||
install_tangetools() {
|
||||
(
|
||||
git clone https://codeberg.org/tange/tangetools
|
||||
git clone https://git.data.coop/tange/tangetools
|
||||
cd tangetools &&
|
||||
make &&
|
||||
sudo make install
|
||||
|
|
|
@ -74,7 +74,6 @@ start_centos3
|
|||
ssh $SSHLOGIN1 cat .ssh/id_rsa.pub | ssh $SSHLOGIN2 'cat >>.ssh/authorized_keys'
|
||||
ssh $SSHLOGIN1 'cat .ssh/id_rsa.pub >>.ssh/authorized_keys; chmod 600 .ssh/authorized_keys'
|
||||
ssh $SSHLOGIN1 'ssh -o StrictHostKeyChecking=no localhost true; ssh -o StrictHostKeyChecking=no '$SSHLOGIN2' true;'
|
||||
ssh $SSHLOGIN1 parallel echo {}: ssh $SSHLOGIN1 parallel ::: OK
|
||||
) &
|
||||
|
||||
. env_parallel.bash
|
||||
|
@ -105,3 +104,4 @@ env_parallel --env par_shellshock_bug --env LC_ALL --env SSHLOGIN2 \
|
|||
-S $SSHLOGIN1 --tag '{} 2>&1' \
|
||||
::: $(compgen -A function | grep par_ | sort) \
|
||||
2> >(grep -Ev 'shopt: not found|declare: not found|No xauth data')
|
||||
ssh $SSHLOGIN1 parallel echo {}: ssh $SSHLOGIN1 parallel ::: OK
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
# Jobs that depend on the hardware
|
||||
# (e.g number of CPU threads, terminal type)
|
||||
|
||||
par__environment_too_big_ash() {
|
||||
par__environment_too_big_dash() {
|
||||
myscript=$(cat <<'_EOF'
|
||||
echo 'bug #50815: env_parallel should warn if the environment is too big'
|
||||
len_var=60
|
||||
|
@ -17,7 +17,7 @@ par__environment_too_big_ash() {
|
|||
len_fun_quote=1
|
||||
len_fun_quote_remote=1
|
||||
|
||||
. `which env_parallel.ash`;
|
||||
. `which env_parallel.dash`;
|
||||
|
||||
repeat() {
|
||||
# Repeat input string n*1000 times
|
||||
|
@ -72,7 +72,7 @@ par__environment_too_big_ash() {
|
|||
bigfunc() { true; }
|
||||
_EOF
|
||||
)
|
||||
stdout ssh ash@lo "$myscript" | perl -pe 's/(\d)\d\d\d\d/${1}XXXX/g'
|
||||
stdout ssh dash@lo "$myscript" | perl -pe 's/(\d)\d\d\d\d/${1}XXXX/g'
|
||||
}
|
||||
|
||||
par__environment_too_big_dash() {
|
||||
|
@ -155,13 +155,13 @@ par__environment_too_big_zsh() {
|
|||
. `which env_parallel.zsh`;
|
||||
|
||||
len_var=16
|
||||
len_var_remote=$len_var-15
|
||||
len_var_remote=$len_var
|
||||
len_var_quote=$len_var
|
||||
len_var_quote_remote=$len_var-15
|
||||
len_fun=18
|
||||
len_fun_remote=$len_fun-10
|
||||
len_fun_quote=$len_fun
|
||||
len_fun_quote_remote=$len_fun-10
|
||||
len_fun_quote_remote=$len_fun-5
|
||||
|
||||
repeat_() {
|
||||
# Repeat input string n*1000 times
|
||||
|
|
|
@ -16,6 +16,25 @@ export -f stdsort
|
|||
# Test amount of parallelization
|
||||
# parallel --shuf --jl /tmp/myjl -j1 'export JOBS={1};'bash tests-to-run/parallel-local-0.3s.sh ::: {1..16} ::: {1..5}
|
||||
|
||||
par_parcat_args_stdin() {
|
||||
echo 'bug #51690: parcat: read args from stdin'
|
||||
# parcat reads files line by line
|
||||
# so this does not work if TMPDIR contains \n
|
||||
TMPDIR='/tmp/Y/ </i'
|
||||
mkdir -p "$TMPDIR"
|
||||
tmp1=$(mktemp)
|
||||
tmp2=$(mktemp)
|
||||
echo OK1 > "$tmp1"
|
||||
echo OK2 > "$tmp2"
|
||||
(echo "$tmp1"; echo "$tmp2") | parcat | sort
|
||||
rm "$tmp1" "$tmp2"
|
||||
}
|
||||
|
||||
par_--rpl_group_bug() {
|
||||
echo 'Bug in --rpl group: $$1_'
|
||||
parallel --rpl '{a(.)b} s/$$1_c/o/g' echo {aDb} ::: GD_cD_cd
|
||||
}
|
||||
|
||||
par_env_parallel_recordenv() {
|
||||
echo 'bug #65127: env_parallel --record-env and --recordenv should do the same.'
|
||||
. env_parallel.bash
|
||||
|
@ -801,20 +820,6 @@ par_X_eta_div_zero() {
|
|||
perl -ne '/../ and print'
|
||||
}
|
||||
|
||||
par_parcat_args_stdin() {
|
||||
echo 'bug #51690: parcat: read args from stdin'
|
||||
# parcat reads files line by line
|
||||
# so this does not work if TMPDIR contains \n
|
||||
TMPDIR='/tmp/Y/ </i'
|
||||
mkdir -p "$TMPDIR"
|
||||
tmp1=$(mktemp)
|
||||
tmp2=$(mktemp)
|
||||
echo OK1 > "$tmp1"
|
||||
echo OK2 > "$tmp2"
|
||||
(echo "$tmp1"; echo "$tmp2") | parcat | sort
|
||||
rm "$tmp1" "$tmp2"
|
||||
}
|
||||
|
||||
par_parcat_rm() {
|
||||
echo 'bug #51691: parcat --rm remove fifo when opened'
|
||||
tmp1=$(mktemp)
|
||||
|
|
|
@ -8,7 +8,75 @@
|
|||
# Each should be taking 10-30s and be possible to run in parallel
|
||||
# I.e.: No race conditions, no logins
|
||||
|
||||
par_tee_too_many_args() {
|
||||
par_--match() {
|
||||
export PARALLEL=-k
|
||||
echo Basic match
|
||||
parallel --match '(.*)/([a-zA-Z]+)' echo {1.2} {1.1} \
|
||||
::: works/This "works, too"/This
|
||||
|
||||
echo Simple CSV-parsing
|
||||
echo https://gnu.org/s/parallel,myfile |
|
||||
parallel --match '(.*),(.*)' echo url={1.1} filename={1.2}
|
||||
|
||||
echo Dummy --match for input source 1, real --match for input source 2
|
||||
parallel --match '' --match '(.*)/([A-Z]+)' echo {2.1} {1} ::: works ::: This/SKIP
|
||||
|
||||
echo Reuse --match
|
||||
parallel --match +2 --match '([A-Z]+)' echo {2.1} {1.1} \
|
||||
::: ignoreOK ::: ignoreALL
|
||||
|
||||
echo With --header :
|
||||
parallel --header : --match +2 --match '([A-Z]+)' echo {B.1} {A.1} \
|
||||
::: A ignoreOK ::: B ignoreALL
|
||||
|
||||
echo Failure to match/Partial match
|
||||
parallel --match '([a-z]+)' echo {1.1} ::: matches FAILS MATCHESpartly
|
||||
|
||||
echo Test error: missing --match
|
||||
parallel --match 'dummy' echo {2.1} ::: should fail
|
||||
|
||||
echo 'Test error: \001 in match'
|
||||
ctrl_a=$(perl -e 'printf "%c",1')
|
||||
parallel --match "$ctrl_a" echo {1.1} ::: fail
|
||||
|
||||
echo From man parallel_examples
|
||||
parallel --match '(.)' --dr 'mkdir -p {1.1} && mv {} {1.1}' ::: afile bfile adir
|
||||
parallel --match '(.).* (.*)' echo {1.1}. {1.2} \
|
||||
::: "Arthur Dent" "Ford Prefect" "Tricia McMillan" "Zaphod Beeblebrox"
|
||||
parallel --match '(.*)/(.*)/(.*)' echo {1.3}-{1.1}-{1.2} \
|
||||
::: 12/31/1969 01/19/2038 06/01/2002
|
||||
parallel --match 'https://(.*?)/(.*)' echo Domain: {1.1} Path: {1.2} \
|
||||
::: https://example.com/dir/page https://gnu.org/s/parallel
|
||||
parallel --match '(.*),(.*)' echo Second: {1.2}, First: {1.1} \
|
||||
::: "Arthur,Babel fish" "Adams,Betelgeuse" "Arcturan,Bistro"
|
||||
parallel --match '([a-z])([a-z]*) ([a-z])([a-z]*)' \
|
||||
echo '{=1.1 $_=uc($_) =}{1.2} {=1.3 $_=uc($_) =}{1.4}' \
|
||||
::: "pan galactic" "gargle blaster"
|
||||
dial=(
|
||||
"DK(Denmark) 00,45"
|
||||
"US(United States) 011,1"
|
||||
"JP(Japan) 010,81"
|
||||
"AU(Australia) 0011,61"
|
||||
"CA(Canada) 011,1"
|
||||
"RU(Russia) 810,7"
|
||||
"TH(Thailand) 001,66"
|
||||
"TW(Taiwan) 002,886"
|
||||
)
|
||||
parallel --match '(.*)\((.*)\) (.*),(.*)' --match +1 \
|
||||
echo From {1.1}/{1.2} to {2.1}/{2.2} dial {1.3}-{2.4} \
|
||||
::: "${dial[@]}" ::: "${dial[@]}"
|
||||
|
||||
echo Capture groups CSV-parsing - not implemented
|
||||
echo https://gnu.org/s/parallel,myfile |
|
||||
parallel --match '(?<url>.*),(?<file>.*)' echo url={url} filename={file}
|
||||
|
||||
echo Non posistional replacement fields - not implemented
|
||||
parallel --match '(.*),(.*)_(.*)' echo {.2} {.3} {.1} ::: Gold,Heart_of
|
||||
|
||||
echo TODO Ignore case?
|
||||
}
|
||||
|
||||
par__tee_too_many_args() {
|
||||
echo '### Fail if there are more arguments than --jobs'
|
||||
seq 11 | stdout parallel -k --tag --pipe -j4 --tee grep {} ::: {1..4}
|
||||
tmp=`mktemp`
|
||||
|
@ -48,7 +116,7 @@ par__load_from_PARALLEL() {
|
|||
zcat | sort -n | md5sum
|
||||
}
|
||||
|
||||
par_quote_special_results() {
|
||||
par__quote_special_results() {
|
||||
echo "### Test --results on file systems with limited UTF8 support"
|
||||
export LC_ALL=C
|
||||
doit() {
|
||||
|
@ -217,7 +285,7 @@ par_opt_arg_eaten() {
|
|||
printf '1\0002\0003\0004\0005\000' | stdout parallel -k -0 -i repl echo repl OK
|
||||
}
|
||||
|
||||
par_nice() {
|
||||
par__nice() {
|
||||
echo 'Check that --nice works'
|
||||
# parallel-20160422 OK
|
||||
check_for_2_bzip2s() {
|
||||
|
@ -342,7 +410,7 @@ par_END() {
|
|||
(echo include this; echo END; echo not this) | parallel -k --eof END echo
|
||||
}
|
||||
|
||||
par_xargs_compat() {
|
||||
par__xargs_compat() {
|
||||
echo xargs compatibility
|
||||
a_b-c() { echo a_b; echo c; }
|
||||
a_b_-c-d() { echo a_b' '; echo c; echo d; }
|
||||
|
@ -597,7 +665,7 @@ par_shellquote() {
|
|||
"$shell" -c perl\ -e\ \'print\ pack\(\"c\*\",1..255\)\'\ \|\ parallel\ -0\ --shellquote
|
||||
}
|
||||
export -f doit
|
||||
parallel --tag -q -k doit {} ::: ash bash csh dash fish fizsh ksh2020 ksh93 lksh mksh posh rzsh sash sh static-sh tcsh yash zsh csh tcsh
|
||||
parallel --tag -q -k doit {} ::: bash csh dash fish fizsh ksh2020 ksh93 lksh mksh posh rzsh sash sh static-sh tcsh yash zsh csh tcsh
|
||||
}
|
||||
|
||||
par_tmp_full() {
|
||||
|
|
|
@ -433,7 +433,7 @@ par_testquote() {
|
|||
export -f testquote
|
||||
# "sash script" does not work
|
||||
# "sash -f script" does, but is currently not supported by GNU Parallel
|
||||
parallel --tag -k testquote ::: ash bash csh dash fdsh fish fizsh ksh ksh93 mksh posh rbash rc rzsh "sash -f" sh static-sh tcsh yash zsh
|
||||
parallel --tag -k testquote ::: bash csh dash fdsh fish fizsh ksh ksh93 mksh posh rbash rc rzsh "sash -f" sh static-sh tcsh yash zsh
|
||||
# "fdsh" is currently not supported by GNU Parallel:
|
||||
# It gives ioctl(): Interrupted system call
|
||||
parallel --tag -k testquote ::: fdsh
|
||||
|
|
|
@ -290,7 +290,7 @@ par_exit_code() {
|
|||
echo '# Ideally the command should return the same'
|
||||
echo '# with or without parallel'
|
||||
# These give the same exit code prepended with 'true;' or not
|
||||
OK="ash csh dash fish fizsh ksh2020 posh rc sash sh tcsh"
|
||||
OK="csh dash fish fizsh ksh2020 posh rc sash sh tcsh"
|
||||
# These do not give the same exit code prepended with 'true;' or not
|
||||
BAD="bash ksh93 mksh static-sh yash zsh"
|
||||
doit $OK $BAD
|
||||
|
@ -530,7 +530,7 @@ par_memfree() {
|
|||
par_test_detected_shell() {
|
||||
echo '### bug #42913: Dont use $SHELL but the shell currently running'
|
||||
|
||||
shells="ash bash csh dash fish fizsh ksh ksh93 mksh posh rbash rush rzsh sash sh static-sh tcsh yash zsh"
|
||||
shells="bash csh dash fish fizsh ksh ksh93 mksh posh rbash rush rzsh sash sh static-sh tcsh yash zsh"
|
||||
test_unknown_shell() {
|
||||
shell="$1"
|
||||
tmp="/tmp/test_unknown_shell_$shell"
|
||||
|
|
|
@ -8,7 +8,31 @@
|
|||
# Each should be taking 3-10s and be possible to run in parallel
|
||||
# I.e.: No race conditions, no logins
|
||||
|
||||
par_pty() {
|
||||
par_format_string() {
|
||||
echo Format string + {}
|
||||
parallel echo 12.346 98.765 == {:%.3f} ::: 12.34567 ::: 98.76543
|
||||
echo Format string + {.}
|
||||
parallel echo 12.000 98.000 == {.:%.3f} ::: 12.34567 ::: 98.76543
|
||||
echo Format string + {2}
|
||||
parallel echo 98.765 == {2:%.3f} ::: 12.34567 ::: 98.76543
|
||||
echo Format string + {2.}
|
||||
parallel echo 98.000 == {2.:%.3f} ::: 12.34567 ::: 98.76543
|
||||
echo Format string + {2.}{}
|
||||
parallel echo 98.00012.34567 98.76543 == {2.:%.3f}{} ::: 12.34567 ::: 98.76543
|
||||
echo Dynamic replacement strings
|
||||
echo {dyn} + format
|
||||
parallel --rpl '{/(\d)/(.*)} s/$$1/$$2/g;' echo 12.44 98.77 == {/3/44:%8.2f} ::: 12.34567 ::: 98.76543
|
||||
echo {Positional dyn} + format
|
||||
parallel --rpl '{/(\d)/(.*)} s/$$1/$$2/g;' echo 12.44 98.77 98.765 == {/3/44:%8.2f} {2:%.3f} ::: 12.34567 ::: 98.76543
|
||||
echo {dyn__postfix}
|
||||
parallel --rpl '{/(\d)/(.*)__} s/$$1/$$2/g;' echo 12.444567 98.765444 == {/3/44__} ::: 12.34567 ::: 98.76543
|
||||
echo {dyn__postfix} + format
|
||||
parallel --rpl '{/(\d)/(.*)__} s/$$1/$$2/g;' echo 00012.44 == {/3/44__:%08.2f} ::: 12.34567
|
||||
echo dyn without {}
|
||||
parallel --rpl '/(\d)/(.*)} s/$$1/$$2/g;' echo 12.444567 98.765444 == /3/44} ::: 12.34567 ::: 98.76543
|
||||
}
|
||||
|
||||
par_pty() {
|
||||
parallel 'echo {} > {}' ::: 1 2 3
|
||||
echo 1 > files
|
||||
echo 'xargs Expect: 3 1'
|
||||
|
@ -336,7 +360,7 @@ par__test_cpu_detection_topology() {
|
|||
'
|
||||
}
|
||||
cpu20() {
|
||||
echo '1-16-24-16 8*2 thr + 8*1 thr Intel Core i7-13700HX (user submit)'
|
||||
echo '1-16-24-16 8*2 thr + 8*1 thr Intel Core i7-13700HX (user submit - detected wrong)'
|
||||
echo '
|
||||
KLUv/QRovBQA1tU+IGBJ2wa2Edh2H/3+WsW1pqAixNFSp4VaZLdSOgQfA5ACMwA1ADcATO1J
|
||||
9EsI6f//P65ZU+hjFfNJ/bjGHYG/E5T1fjgw67nF/3R4Jh4lRFYqGeWTyiMq/BEIRzMLcSll
|
||||
|
@ -1000,7 +1024,7 @@ par__test_cpu_detection_cpuinfo() {
|
|||
' | unpack
|
||||
}
|
||||
cpu20() {
|
||||
echo '1-16-24-16 8*2 thr + 8*1 thr Intel Core i7-13700HX (user submit)'
|
||||
echo '1-16-24-16 8*2 thr + 8*1 thr Intel Core i7-13700HX (user submit - detected wrong)'
|
||||
echo '
|
||||
KLUv/QRoXSEApjqgIyBtrAMBfUS1S7lyNhBkqR+VRby1HGkcIfAfpUMCoQwIwQaLnACNAJAA
|
||||
LX4Zn3Z86/pt/rpvlN4QgwxJGnClhXdPzld527SrNxLxc8heffK1xyxR1NLZEqah89q9Q9Ze
|
||||
|
@ -1306,7 +1330,7 @@ par__test_cpu_detection_lscpu() {
|
|||
' | unpack
|
||||
}
|
||||
cpu20() {
|
||||
echo '1-16-24-16 8*2 thr + 8*1 thr Intel Core i7-13700HX (user submit)'
|
||||
echo '1-16-24-16 8*2 thr + 8*1 thr Intel Core i7-13700HX (user submit - detected wrong)'
|
||||
echo '
|
||||
KLUv/QRoxSAACkYADCkAb7g52NOaaG9pWWVp1EK7UMah1zodCwjsgmz4tfgH/PMzcUVV1Ypq
|
||||
XsoAswCsALDiYJkWExTubWeGpVgcGJDHJOIB4lGeZGEwGAIeDEcjgwMIhuIWQu3JUsEBg1HA
|
||||
|
|
|
@ -4,6 +4,8 @@
|
|||
#
|
||||
# SPDX-License-Identifier: GPL-3.0-or-later
|
||||
|
||||
# On a 64G machine this uses 24G RAM + 5 min
|
||||
|
||||
make stopvm >/dev/null 2>/dev/null
|
||||
TMPDIR=${TMPDIR:-/tmp}
|
||||
mkdir -p $TMPDIR
|
||||
|
|
20
testsuite/tests-to-run/parallel-local-race02.sh
Normal file → Executable file
20
testsuite/tests-to-run/parallel-local-race02.sh
Normal file → Executable file
|
@ -6,6 +6,24 @@
|
|||
|
||||
# These fail regularly
|
||||
|
||||
env_underscore() {
|
||||
echo WHY DOES THIS FAIL?
|
||||
echo '### --env _'
|
||||
echo ignored_var >> ~/.parallel/ignored_vars
|
||||
unset $(compgen -A function | grep par_)
|
||||
ignored_var="ERROR IF COPIED"
|
||||
export ignored_var
|
||||
fUbAr="OK from fubar" parallel -S parallel@lo --env _ echo '$fUbAr $ignored_var' ::: test
|
||||
echo 'In csh this may fail with ignored_var: Undefined variable.'
|
||||
fUbAr="OK from fubar" parallel -S csh@lo --env _ echo '$fUbAr $ignored_var' ::: test
|
||||
|
||||
echo '### --env _ with explicit mentioning of normally ignored var $ignored_var'
|
||||
ignored_var="should be copied"
|
||||
fUbAr="OK from fubar" parallel -S parallel@lo --env ignored_var,_ echo '$fUbAr $ignored_var' ::: test
|
||||
fUbAr="OK from fubar" parallel -S csh@lo --env ignored_var,_ echo '$fUbAr $ignored_var' ::: test
|
||||
}
|
||||
env_underscore
|
||||
|
||||
ctrlz_should_suspend_children() {
|
||||
echo 'bug #46120: Suspend should suspend (at least local) children'
|
||||
echo 'it should burn 1.9 CPU seconds, but no more than that'
|
||||
|
@ -236,6 +254,6 @@ par_continuous_output() {
|
|||
}
|
||||
|
||||
export -f $(compgen -A function | grep par_)
|
||||
compgen -A function | grep par_ | sort |
|
||||
compgen -A function | G "$@" | grep par_ | sort |
|
||||
# parallel --joblog /tmp/jl-`basename $0` -j10 --tag -k '{} 2>&1'
|
||||
parallel -o --joblog /tmp/jl-`basename $0` -j1 --tag -k '{} 2>&1'
|
||||
|
|
|
@ -201,7 +201,7 @@ do_dburl() {
|
|||
perl -pe 's/ +/ /g' |
|
||||
# SQLITE par_empty Error: near line 1: in prepare, no such table: TBL99999 (1)
|
||||
# SQLITE par_empty Parse error near line 1: no such table: TBL99999
|
||||
perl -pe 's/Error: near line 1: in prepare, (.*) .../Parse error near line 1: /'
|
||||
perl -pe 's/Error: near line 1: in prepare, (.*)/Parse error near line 1: $1/'
|
||||
}
|
||||
export -f do_dburl
|
||||
parallel -vk --tag do_dburl ::: CSV INFLUX MYSQL PG SQLITE
|
||||
|
|
|
@ -75,22 +75,6 @@ par_--nonall_results() {
|
|||
rm -r "$tmp"
|
||||
}
|
||||
|
||||
par_env_underscore() {
|
||||
echo '### --env _'
|
||||
echo ignored_var >> ~/.parallel/ignored_vars
|
||||
unset $(compgen -A function | grep par_)
|
||||
ignored_var="should not be copied"
|
||||
export ignored_var
|
||||
fUbAr="OK FUBAR" parallel -S parallel@lo --env _ echo '$fUbAr $ignored_var' ::: test
|
||||
echo 'In csh this may fail with ignored_var: Undefined variable.'
|
||||
fUbAr="OK FUBAR" parallel -S csh@lo --env _ echo '$fUbAr $ignored_var' ::: test 2>&1
|
||||
|
||||
echo '### --env _ with explicit mentioning of normally ignored var $ignored_var'
|
||||
ignored_var="should be copied"
|
||||
fUbAr="OK FUBAR" parallel -S parallel@lo --env ignored_var,_ echo '$fUbAr $ignored_var' ::: test
|
||||
fUbAr="OK FUBAR" parallel -S csh@lo --env ignored_var,_ echo '$fUbAr $ignored_var' ::: test 2>&1
|
||||
}
|
||||
|
||||
par_warn_when_exporting_func() {
|
||||
echo 'bug #40137: SHELL not bash: Warning when exporting funcs'
|
||||
myrun() {
|
||||
|
@ -100,7 +84,7 @@ par_warn_when_exporting_func() {
|
|||
PARALLEL_SHELL=$1 parallel --env myfunc -S lo myfunc ::: OK
|
||||
}
|
||||
export -f myrun
|
||||
parallel -k --tag myrun ::: /bin/{sh,bash} /usr/bin/{ash,csh,dash,ksh,tcsh,zsh}
|
||||
parallel -k --tag myrun ::: /bin/{sh,bash} /usr/bin/{csh,dash,ksh,tcsh,zsh}
|
||||
}
|
||||
|
||||
par_exporting_in_zsh() {
|
||||
|
@ -237,5 +221,5 @@ par_z_multiple_hosts_repeat_arg() {
|
|||
|
||||
export -f $(compgen -A function | grep par_)
|
||||
compgen -A function | G par_ "$@" | LC_ALL=C sort |
|
||||
parallel --timeout 250 -j6 --tag -k --joblog /tmp/jl-`basename $0` '{} 2>&1' |
|
||||
parallel --timeout 250 -j75% --tag -k --joblog /tmp/jl-`basename $0` '{} 2>&1' |
|
||||
perl -pe 's:/usr/bin:/bin:g;'
|
||||
|
|
|
@ -46,7 +46,8 @@ par_--ssh_autossh() {
|
|||
stdout parallel -S csh@lo --trc {}.out touch {}.out ::: foo_autossh
|
||||
ls foo_autossh*
|
||||
rm foo_autossh*
|
||||
) | grep -Ev 'Warning: remote port forwarding failed for listen'
|
||||
) | grep -Ev 'Warning: remote port forwarding failed for listen' |
|
||||
perl -pe 's/Receiver=[0-9.]+/Receiver=9.9.9/g'
|
||||
}
|
||||
|
||||
par_fish_exit() {
|
||||
|
|
|
@ -29,63 +29,6 @@ export -f retry
|
|||
## par_*_man = tests from the man page
|
||||
#
|
||||
|
||||
par__man_ash() {
|
||||
echo '### ash'
|
||||
|
||||
myscript=$(cat <<'_EOF'
|
||||
echo "### From man env_parallel"
|
||||
|
||||
. `which env_parallel.ash`;
|
||||
|
||||
alias myecho='echo aliases with \= \& \" \!'" \'"
|
||||
myecho work
|
||||
env_parallel myecho ::: work
|
||||
env_parallel -S server myecho ::: work
|
||||
env_parallel --env myecho myecho ::: work
|
||||
env_parallel --env myecho -S server myecho ::: work
|
||||
|
||||
alias multiline='echo multiline
|
||||
echo aliases with \= \& \" \!'" \'"
|
||||
multiline work
|
||||
env_parallel multiline ::: work
|
||||
env_parallel -S server multiline ::: work
|
||||
env_parallel --env multiline multiline ::: work
|
||||
env_parallel --env multiline -S server multiline ::: work
|
||||
alias multiline="dummy"
|
||||
|
||||
# Functions are not supported in ash
|
||||
|
||||
myvar='variables with = & " !'" '"
|
||||
echo "$myvar" work
|
||||
env_parallel echo '"$myvar"' ::: work
|
||||
env_parallel -S server echo '"$myvar"' ::: work
|
||||
env_parallel --env myvar echo '"$myvar"' ::: work
|
||||
env_parallel --env myvar -S server echo '"$myvar"' ::: work
|
||||
|
||||
multivar='multiline
|
||||
variables with = & " !'" '"
|
||||
echo "$multivar" work
|
||||
env_parallel echo '"$multivar"' ::: work
|
||||
env_parallel -S server echo '"$multivar"' ::: work
|
||||
env_parallel --env multivar echo '"$multivar"' ::: work
|
||||
env_parallel --env multivar -S server echo '"$multivar"' ::: work
|
||||
|
||||
# Arrays are not supported in ash
|
||||
|
||||
# Exporting of functions is not supported
|
||||
# env_parallel --argsep --- env_parallel -k echo ::: multi level --- env_parallel
|
||||
|
||||
env_parallel ::: true false true false
|
||||
echo exit value $? should be 2
|
||||
|
||||
env_parallel --no-such-option 2>&1 >/dev/null
|
||||
# Sleep 1 to delay output to stderr to avoid race
|
||||
echo exit value $? should be 255 `sleep 1`
|
||||
_EOF
|
||||
)
|
||||
ssh ash@lo "$myscript"
|
||||
}
|
||||
|
||||
par__man_bash() {
|
||||
echo '### bash'
|
||||
|
||||
|
@ -624,55 +567,6 @@ _EOF
|
|||
ssh zsh@lo "$myscript"
|
||||
}
|
||||
|
||||
|
||||
par_--env_underscore_ash() {
|
||||
echo '### ash'
|
||||
myscript=$(cat <<'_EOF'
|
||||
echo "### Testing of --env _"
|
||||
|
||||
alias not_copied_alias="echo BAD"
|
||||
# not_copied_func() { echo BAD; };
|
||||
not_copied_var=BAD
|
||||
# not_copied_array=(BAD BAD BAD);
|
||||
. `which env_parallel.ash`;
|
||||
env_parallel --record-env;
|
||||
alias myecho="echo \$myvar aliases";
|
||||
# myfunc() { myecho functions $*; };
|
||||
myvar="variables in";
|
||||
# myarray=(and arrays in);
|
||||
# env_parallel myfunc ::: work;
|
||||
# env_parallel -S server myfunc ::: work;
|
||||
env_parallel --env myvar,myecho myecho ::: work;
|
||||
env_parallel --env myvar,myecho -S server myecho ::: work;
|
||||
env_parallel --env _ myecho ::: work;
|
||||
env_parallel --env _ -S server myecho ::: work;
|
||||
|
||||
env_parallel --env _ -S server not_copied_alias ::: error=OK;
|
||||
# env_parallel --env _ -S server not_copied_func ::: error=OK;
|
||||
env_parallel --env _ -S server echo \$not_copied_var ::: error=OK;
|
||||
# env_parallel --env _ -S server echo \${not_copied_array[@]} ::: error=OK;
|
||||
|
||||
echo myvar >> ~/.parallel/ignored_vars;
|
||||
env_parallel --env _ myecho ::: work;
|
||||
env_parallel --env _ -S server myecho ::: work;
|
||||
# echo myarray >> ~/.parallel/ignored_vars;
|
||||
# env_parallel --env _ myfunc ::: work;
|
||||
# env_parallel --env _ -S server myfunc ::: work;
|
||||
echo myecho >> ~/.parallel/ignored_vars;
|
||||
env_parallel --env _ myecho ::: work;
|
||||
echo "OK if no myecho ^^^^^^^^^^^^^^^^^" >&2;
|
||||
env_parallel --env _ -S server myecho ::: work;
|
||||
echo "OK if no myecho ^^^^^^^^^^^^^^^^^" >&2;
|
||||
# echo myfunc >> ~/.parallel/ignored_vars;
|
||||
# env_parallel --env _ myfunc ::: work;
|
||||
# echo "OK if no myfunc ^^^^^^^^^^^^^^^^^" >&2;
|
||||
# env_parallel --env _ -S server myfunc ::: work;
|
||||
# echo "OK if no myfunc ^^^^^^^^^^^^^^^^^" >&2;
|
||||
_EOF
|
||||
)
|
||||
ssh ash@lo "$myscript"
|
||||
}
|
||||
|
||||
par_--env_underscore_bash() {
|
||||
echo '### bash'
|
||||
myscript=$(cat <<'_EOF'
|
||||
|
@ -1109,39 +1003,6 @@ _EOF
|
|||
# + remote, locally
|
||||
# + variables, variables with funky content, arrays, assoc array, functions, aliases
|
||||
|
||||
par_funky_ash() {
|
||||
myscript=$(cat <<'_EOF'
|
||||
. `which env_parallel.ash`;
|
||||
|
||||
myvar="myvar works"
|
||||
funky=`perl -e "print pack \"c*\", 2..255"`
|
||||
# Arrays not supported
|
||||
# myarray=("" array_val2 3 "" 5 " space 6 ")
|
||||
# typeset -A assocarr
|
||||
# assocarr[a]=assoc_val_a
|
||||
# assocarr[b]=assoc_val_b
|
||||
alias alias_echo="echo 3 arg";
|
||||
|
||||
func_echo() {
|
||||
echo $*;
|
||||
echo "$myvar"
|
||||
# echo "${myarray[5]}"
|
||||
# echo ${assocarr[a]}
|
||||
echo Funky-"$funky"-funky
|
||||
}
|
||||
|
||||
env_parallel alias_echo ::: alias_works
|
||||
# env_parallel func_echo ::: function_works
|
||||
env_parallel -S ash@lo alias_echo ::: alias_works_over_ssh
|
||||
# env_parallel -S ash@lo func_echo ::: function_works_over_ssh
|
||||
echo
|
||||
echo "$funky" | parallel --shellquote
|
||||
_EOF
|
||||
)
|
||||
# Order is often different. Dunno why. So sort
|
||||
ssh ash@lo "$myscript" 2>&1 | LC_ALL=C sort
|
||||
}
|
||||
|
||||
par_funky_bash() {
|
||||
myscript=$(cat <<'_EOF'
|
||||
. `which env_parallel.bash`;
|
||||
|
@ -1452,31 +1313,6 @@ _EOF
|
|||
ssh zsh@lo "$myscript" 2>&1 | LC_ALL=C sort
|
||||
}
|
||||
|
||||
par_env_parallel_ash() {
|
||||
myscript=$(cat <<'_EOF'
|
||||
. `which env_parallel.ash`;
|
||||
echo 'bug #50435: Remote fifo broke in 20150522'
|
||||
# Due to $PARALLEL_TMP being transferred
|
||||
OK=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 'bug #52534: Tail of multiline alias is ignored'
|
||||
alias myalias='echo alias line 1
|
||||
echo alias line 2
|
||||
echo alias line 3
|
||||
'
|
||||
alias myalias2='echo alias2 line 1
|
||||
echo alias2 line 2
|
||||
'
|
||||
env_parallel myalias ::: myalias2
|
||||
env_parallel -S lo myalias ::: myalias2
|
||||
_EOF
|
||||
)
|
||||
# Order is often different. Dunno why. So sort
|
||||
ssh ash@lo "$myscript" 2>&1 | LC_ALL=C sort
|
||||
}
|
||||
|
||||
par_env_parallel_bash() {
|
||||
myscript=$(cat <<'_EOF'
|
||||
echo 'bug #50435: Remote fifo broke in 20150522'
|
||||
|
@ -1670,10 +1506,6 @@ _EOF
|
|||
ssh zsh@lo "$myscript" 2>&1 | LC_ALL=C sort
|
||||
}
|
||||
|
||||
par_environment_too_big_ash() {
|
||||
echo moved to hwdep1.sh
|
||||
}
|
||||
|
||||
par_environment_too_big_bash() {
|
||||
myscript=$(cat <<'_EOF'
|
||||
echo 'bug #50815: env_parallel should warn if the environment is too big'
|
||||
|
@ -1979,69 +1811,6 @@ par_environment_too_big_zsh() {
|
|||
echo moved to hwdep1.sh
|
||||
}
|
||||
|
||||
par_parset_ash() {
|
||||
myscript=$(cat <<'_EOF'
|
||||
echo 'parset'
|
||||
. `which env_parallel.ash`
|
||||
|
||||
# Arrays not supported
|
||||
# echo '### parset into array'
|
||||
# parset arr1 echo ::: foo bar baz
|
||||
# echo ${arr1[0]} ${arr1[1]} ${arr1[2]}
|
||||
|
||||
echo '### parset into vars with comma'
|
||||
parset comma3,comma2,comma1 echo ::: baz bar foo
|
||||
echo $comma1 $comma2 $comma3
|
||||
|
||||
echo '### parset into vars with space'
|
||||
parset 'space3 space2 space1' echo ::: baz bar foo
|
||||
echo $space1 $space2 $space3
|
||||
|
||||
echo '### parset with newlines'
|
||||
parset 'newline3 newline2 newline1' seq ::: 3 2 1
|
||||
echo "$newline1"
|
||||
echo "$newline2"
|
||||
echo "$newline3"
|
||||
|
||||
# Arrays not supported
|
||||
# echo '### parset into indexed array vars'
|
||||
# parset 'myarray[6],myarray[5],myarray[4]' echo ::: baz bar foo
|
||||
# echo ${myarray[*]}
|
||||
# echo ${myarray[4]} ${myarray[5]} ${myarray[6]}
|
||||
|
||||
echo '### env_parset'
|
||||
myfun() {
|
||||
myecho myfun "$@";
|
||||
}
|
||||
alias myecho='echo myecho "$myvar"'
|
||||
myvar="myvar"
|
||||
# Arrays not supported
|
||||
# myarr=("myarr 0" "myarr 1" "myarr 2")
|
||||
mynewline="`echo newline1;echo newline2;`"
|
||||
# Arrays not supported
|
||||
# env_parset arr1 myfun ::: foo bar baz
|
||||
# echo "${arr1[0]} ${arr1[1]} ${arr1[2]}"
|
||||
env_parset comma3,comma2,comma1 myecho ::: baz bar foo
|
||||
echo "$comma1 $comma2 $comma3"
|
||||
env_parset 'space3 space2 space1' myecho ::: baz bar foo
|
||||
echo "$space1 $space2 $space3"
|
||||
env_parset 'newline3 newline2 newline1' 'echo "$mynewline";seq' ::: 3 2 1
|
||||
echo "$newline1"
|
||||
echo "$newline2"
|
||||
echo "$newline3"
|
||||
# Arrays not supported
|
||||
# env_parset 'myarray[6],myarray[5],myarray[4]' myfun ::: baz bar foo
|
||||
# echo "${myarray[*]}"
|
||||
# echo "${myarray[4]} ${myarray[5]} ${myarray[6]}"
|
||||
parset a,b,c,d 'echo {};exit {}' ::: 0 1 1 0
|
||||
echo Exit value 2 = $?
|
||||
env_parset a,b,c,d 'echo {};exit {}' ::: 0 1 1 0
|
||||
echo Exit value 2 = $?
|
||||
_EOF
|
||||
)
|
||||
ssh ash@lo "$myscript"
|
||||
}
|
||||
|
||||
par_parset_bash() {
|
||||
myscript=$(cat <<'_EOF'
|
||||
echo 'parset'
|
||||
|
@ -2448,107 +2217,6 @@ _EOF
|
|||
|
||||
### env_parallel_session
|
||||
|
||||
par_env_parallel_--session_ash() {
|
||||
myscript=$(cat <<'_EOF'
|
||||
. `which env_parallel.ash`
|
||||
echo '### Test env_parallel --session'
|
||||
|
||||
level0var=l0var
|
||||
# Arrays and functions not supported
|
||||
# level0arr=(level0 array)
|
||||
# level0func() { echo l0func; }
|
||||
alias level0alias='echo l0alias'
|
||||
|
||||
env_parallel --session
|
||||
|
||||
level1var=l1var
|
||||
# Arrays and functions not supported
|
||||
# level1arr=(level1 array)
|
||||
# level1func() { echo l1func; }
|
||||
alias level1alias='echo l1alias'
|
||||
|
||||
echo '### level0 should be hidden, level1 should be transferred'
|
||||
env_parallel -Slo 'echo $level0var; level0func; level0alias; echo ${level0arr[*]}' ::: fail
|
||||
env_parallel 'echo $level0var; level0func; level0alias; echo ${level0arr[*]}' ::: fail
|
||||
env_parallel -Slo 'echo $level1var; level1func; level1alias; echo ${level1arr[*]}' ::: OK
|
||||
env_parallel 'echo $level1var; level1func; level1alias; echo ${level1arr[*]}' ::: OK
|
||||
|
||||
env_parallel --session
|
||||
|
||||
level2var=l2var
|
||||
# Arrays and functions not supported
|
||||
# level2arr=(level2 array)
|
||||
# level2func() { echo l2func; }
|
||||
alias level2alias='echo l2alias'
|
||||
|
||||
echo '### level0+1 should be hidden, level2 should be transferred'
|
||||
env_parallel -Slo 'echo $level0var; level0func; level0alias; echo ${level0arr[*]}' ::: fail
|
||||
env_parallel 'echo $level0var; level0func; level0alias; echo ${level0arr[*]}' ::: fail
|
||||
env_parallel -Slo 'echo $level1var; level1func; level1alias; echo ${level1arr[*]}' ::: fail
|
||||
env_parallel 'echo $level1var; level1func; level1alias; echo ${level1arr[*]}' ::: fail
|
||||
env_parallel -Slo 'echo $level2var; level2func; level2alias; echo ${level2arr[*]}' ::: OK
|
||||
env_parallel 'echo $level2var; level2func; level2alias; echo ${level2arr[*]}' ::: OK
|
||||
|
||||
env_parallel --endsession
|
||||
|
||||
echo '### level0 should be hidden, level1+2 should be transferred'
|
||||
env_parallel -Slo 'echo $level0var; level0func; level0alias; echo ${level0arr[*]}' ::: fail
|
||||
env_parallel 'echo $level0var; level0func; level0alias; echo ${level0arr[*]}' ::: fail
|
||||
env_parallel -Slo 'echo $level1var; level1func; level1alias; echo ${level1arr[*]}' ::: OK
|
||||
env_parallel 'echo $level1var; level1func; level1alias; echo ${level1arr[*]}' ::: OK
|
||||
env_parallel -Slo 'echo $level2var; level2func; level2alias; echo ${level2arr[*]}' ::: OK
|
||||
env_parallel 'echo $level2var; level2func; level2alias; echo ${level2arr[*]}' ::: OK
|
||||
|
||||
env_parallel --endsession
|
||||
|
||||
echo '### level0+1+2 should be transferred'
|
||||
env_parallel -Slo 'echo $level0var; level0func; level0alias; echo ${level0arr[*]}' ::: OK
|
||||
env_parallel 'echo $level0var; level0func; level0alias; echo ${level0arr[*]}' ::: OK
|
||||
env_parallel -Slo 'echo $level1var; level1func; level1alias; echo ${level1arr[*]}' ::: OK
|
||||
env_parallel 'echo $level1var; level1func; level1alias; echo ${level1arr[*]}' ::: OK
|
||||
env_parallel -Slo 'echo $level2var; level2func; level2alias; echo ${level2arr[*]}' ::: OK
|
||||
env_parallel 'echo $level2var; level2func; level2alias; echo ${level2arr[*]}' ::: OK
|
||||
|
||||
alias aliasbefore='echo before'
|
||||
# Functions not supported
|
||||
# varbefore='before'
|
||||
# funcbefore() { echo 'before' "$@"; }
|
||||
# Arrays not supported
|
||||
# arraybefore=(array before)
|
||||
env_parallel --session
|
||||
# stuff defined
|
||||
env_parallel aliasbefore ::: must_fail
|
||||
env_parallel -S lo aliasbefore ::: must_fail
|
||||
# Functions not supported
|
||||
# env_parallel funcbefore ::: must_fail
|
||||
# env_parallel -S lo funcbefore ::: must_fail
|
||||
env_parallel echo '$varbefore' ::: no_before
|
||||
env_parallel -S lo echo '$varbefore' ::: no_before
|
||||
# Arrays not supported
|
||||
# env_parallel echo '${arraybefore[*]}' ::: no_before
|
||||
# env_parallel -S lo echo '${arraybefore[*]}' ::: no_before
|
||||
alias aliasafter='echo after'
|
||||
varafter='after'
|
||||
# Functions not supported
|
||||
# funcafter() { echo 'after' "$@"; }
|
||||
# Arrays not supported
|
||||
# arrayafter=(array after)
|
||||
env_parallel aliasafter ::: aliasafter_OK
|
||||
env_parallel -S lo aliasafter ::: aliasafter_OK
|
||||
# Functions not supported
|
||||
# env_parallel funcafter ::: funcafter_OK
|
||||
# env_parallel -S lo funcafter ::: funcafter_OK
|
||||
env_parallel echo '$varafter' ::: varafter_OK
|
||||
env_parallel -S lo echo '$varafter' ::: varafter_OK
|
||||
# Arrays not supported
|
||||
# env_parallel echo '${arrayafter[*]}' ::: arrayafter_OK
|
||||
# env_parallel -S lo echo '${arrayafter[*]}' ::: arrayafter_OK
|
||||
unset PARALLEL_IGNORED_NAMES
|
||||
_EOF
|
||||
)
|
||||
ssh ash@lo "$myscript"
|
||||
}
|
||||
|
||||
par_env_parallel_--session_bash() {
|
||||
myscript=$(cat <<'_EOF'
|
||||
echo '### Test env_parallel --session / --end-session'
|
||||
|
|
28
testsuite/tests-to-run/parallel-local-ssh9.sh
Normal file → Executable file
28
testsuite/tests-to-run/parallel-local-ssh9.sh
Normal file → Executable file
|
@ -4,30 +4,6 @@
|
|||
#
|
||||
# SPDX-License-Identifier: GPL-3.0-or-later
|
||||
|
||||
par_ash_embed() {
|
||||
myscript=$(cat <<'_EOF'
|
||||
echo '--embed'
|
||||
parallel --embed | tac | perl -pe '
|
||||
/^parallel/ and not $seen++ and s{^}{
|
||||
echo \$b
|
||||
parset a,b,c echo ::: ParsetOK ParsetOK ParsetOK
|
||||
env_parallel echo ::: env_parallel_OK
|
||||
env_parallel --env myvar echo {} --env \\\$myvar ::: env_parallel
|
||||
myvar=OK
|
||||
parallel echo ::: parallel_OK
|
||||
PATH=/usr/sbin:/usr/bin:/sbin:/bin
|
||||
# Do not look for parallel in /usr/local/bin
|
||||
#. \`which env_parallel.ash\`
|
||||
}
|
||||
' | tac > parallel-embed
|
||||
chmod +x parallel-embed
|
||||
./parallel-embed
|
||||
rm parallel-embed
|
||||
_EOF
|
||||
)
|
||||
ssh ash@lo "$myscript"
|
||||
}
|
||||
|
||||
par_bash_embed() {
|
||||
myscript=$(cat <<'_EOF'
|
||||
echo '--embed'
|
||||
|
@ -159,8 +135,8 @@ par_env_parallel_big_env() {
|
|||
env_parallel --session
|
||||
a=`rand | perl -pe 's/\0//g'| head -c 10000`
|
||||
env_parallel -Slo echo ::: OK 2>&1
|
||||
a=`rand | perl -pe 's/\0//g'| head -c 20000`
|
||||
env_parallel -Slo echo should ::: fail 2>/dev/null || echo OK
|
||||
a=`rand | perl -pe 's/\0//g'| head -c 50000`
|
||||
env_parallel -Slo echo THIS SHOULD ::: FAIL 2>/dev/null || echo OK
|
||||
}
|
||||
|
||||
par_no_route_to_host() {
|
||||
|
|
108
testsuite/tests-to-run/parallel-local21.sh
Normal file → Executable file
108
testsuite/tests-to-run/parallel-local21.sh
Normal file → Executable file
|
@ -207,7 +207,7 @@ par_shebang_wrap_ruby() {
|
|||
script="$TMPDIR"/shebang_wrap_ruby
|
||||
cat <<'EOF' > "$script"
|
||||
#!/usr/local/bin/parallel --shebang-wrap -k /usr/bin/ruby
|
||||
|
||||
|
||||
print "Arguments "
|
||||
puts ARGV
|
||||
EOF
|
||||
|
@ -234,13 +234,117 @@ EOF
|
|||
rm "$script"
|
||||
}
|
||||
|
||||
par_shebang_wrap_groovy() {
|
||||
script="$TMPDIR"/shebang_wrap_groovy
|
||||
unset DISPLAY
|
||||
cat <<'EOF' > "$script"
|
||||
#!/usr/local/bin/parallel --shebang-wrap -k /snap/bin/groovy
|
||||
|
||||
println "Arguments: ${args.join(' ')}"
|
||||
EOF
|
||||
chmod 755 "$script"
|
||||
"$script" arg1 arg2 "arg3.1 arg3.2"
|
||||
rm "$script"
|
||||
}
|
||||
|
||||
par_shebang_wrap_racket() {
|
||||
script="$TMPDIR"/shebang_wrap_racket
|
||||
unset DISPLAY
|
||||
cat <<'EOF' > "$script"
|
||||
#!/usr/local/bin/parallel --shebang-wrap -k /usr/bin/racket
|
||||
#lang racket
|
||||
|
||||
;; Get the command-line arguments, skipping the script name
|
||||
(define args (vector->list (current-command-line-arguments)))
|
||||
|
||||
;; Format the arguments as a string
|
||||
(define formatted-args (string-join args " "))
|
||||
|
||||
;; Print the result
|
||||
(printf "Arguments: ~a\n" formatted-args)
|
||||
EOF
|
||||
chmod 755 "$script"
|
||||
"$script" arg1 arg2 "arg3.1 arg3.2"
|
||||
rm "$script"
|
||||
}
|
||||
|
||||
par_shebang_wrap_scheme() {
|
||||
script="$TMPDIR"/shebang_wrap_scheme
|
||||
unset DISPLAY
|
||||
cat <<'EOF' > "$script"
|
||||
#!/usr/local/bin/parallel --shebang-wrap -k /usr/bin/env guile
|
||||
!#
|
||||
|
||||
(define (print-arguments args)
|
||||
(display "Arguments: ")
|
||||
(for-each (lambda (arg)
|
||||
(display arg)
|
||||
(display " "))
|
||||
args)
|
||||
(newline))
|
||||
|
||||
(print-arguments (cdr (command-line)))
|
||||
EOF
|
||||
chmod 755 "$script"
|
||||
stdout "$script" arg1 arg2 "arg3.1 arg3.2" |
|
||||
grep -v ';;;' | grep -v shebang_wrap_sche
|
||||
rm "$script"
|
||||
}
|
||||
|
||||
par_shebang_wrap_awk() {
|
||||
script="$TMPDIR"/shebang_wrap_awk
|
||||
unset DISPLAY
|
||||
cat <<'EOF' > "$script"
|
||||
#!/usr/local/bin/parallel --shebang-wrap -k /usr/bin/awk -f
|
||||
|
||||
BEGIN {
|
||||
printf "Arguments: "
|
||||
for (i = 1; i < ARGC; i++) {
|
||||
printf "%s ", ARGV[i]
|
||||
}
|
||||
printf "\n"
|
||||
}
|
||||
EOF
|
||||
chmod 755 "$script"
|
||||
"$script" arg1 arg2 "arg3.1 arg3.2"
|
||||
rm "$script"
|
||||
}
|
||||
|
||||
par_shebang_wrap_fsharp() {
|
||||
script="$TMPDIR"/shebang_wrap_fsharp.fsx
|
||||
unset DISPLAY
|
||||
cat <<'EOF' > "$script"
|
||||
#!/usr/local/bin/parallel --shebang-wrap -k /usr/bin/fsharpi
|
||||
|
||||
let args = (System.Environment.GetCommandLineArgs()
|
||||
|> Array.tail |> Array.tail |> Array.tail)
|
||||
printfn "Arguments: %A" args
|
||||
EOF
|
||||
chmod 755 "$script"
|
||||
"$script" arg1 arg2 "arg3.1 arg3.2"
|
||||
rm "$script"
|
||||
}
|
||||
|
||||
par_shebang_wrap_julia() {
|
||||
script="$TMPDIR"/shebang_wrap_julia
|
||||
unset DISPLAY
|
||||
cat <<'EOF' > "$script"
|
||||
#!/usr/local/bin/parallel --shebang-wrap -k /snap/bin/julia
|
||||
|
||||
println("Arguments: ", join(ARGS, " "))
|
||||
EOF
|
||||
chmod 755 "$script"
|
||||
"$script" arg1 arg2 "arg3.1 arg3.2"
|
||||
rm "$script"
|
||||
}
|
||||
|
||||
par_shebang_wrap_clisp() {
|
||||
# clisp cannot handle dirs w/ shell wildcards
|
||||
TMPDIR=/tmp
|
||||
script="$TMPDIR"/shebang_wrap_clisp
|
||||
cat <<'EOF' > "$script"
|
||||
#!/usr/local/bin/parallel --shebang-wrap -k /usr/bin/clisp
|
||||
|
||||
|
||||
(format t "~&~S~&" 'Arguments)
|
||||
(format t "~&~S~&" *args*)
|
||||
EOF
|
||||
|
|
|
@ -194,4 +194,4 @@ par_help() {
|
|||
|
||||
export -f $(compgen -A function | grep par_)
|
||||
compgen -A function | G par_ "$@" | LC_ALL=C sort |
|
||||
parallel --timeout 1000% -j0 --tag -k --joblog /tmp/jl-`basename $0` '{} 2>&1'
|
||||
parallel --timeout 3000% -j0 --tag -k --joblog /tmp/jl-`basename $0` '{} 2>&1'
|
||||
|
|
|
@ -14,7 +14,7 @@ par_sqlite() {
|
|||
# create database & table
|
||||
sql $CMDSQL:///sqltest.$CMDSQL "CREATE TABLE foo(n INT, t TEXT);"
|
||||
sql --list-tables $CMDSQL:///sqltest.$CMDSQL
|
||||
file sqltest.$CMDSQL
|
||||
file sqltest.$CMDSQL | perl -pe 's/ version \d+//'
|
||||
sql $CMDSQL:///sqltest.$CMDSQL "INSERT INTO foo VALUES(1,'Line 1');"
|
||||
sql $CMDSQL:///sqltest.$CMDSQL "INSERT INTO foo VALUES(2,'Line 2');"
|
||||
sql $CMDSQL:///sqltest.$CMDSQL "SELECT * FROM foo;"
|
||||
|
|
2
testsuite/tests-to-run/sql03.sh
Normal file → Executable file
2
testsuite/tests-to-run/sql03.sh
Normal file → Executable file
|
@ -111,7 +111,7 @@ par_listproc() {
|
|||
echo "### Test --listproc"
|
||||
sql --listproc :oraunittest |
|
||||
perl -ne '/select 1 from dual|user_objects|user_tablespaces|connect_by_filtering/ and next;
|
||||
s/[21]\.\d+/1.99999/;
|
||||
s/[21 ]\.\d{5}/1.99999/;
|
||||
s/ +/ /g;
|
||||
print'
|
||||
sql --listproc $MYSQL_TEST_DBURL |
|
||||
|
|
|
@ -1,21 +1,3 @@
|
|||
par__environment_too_big_ash bug #5XXXX: env_parallel should warn if the environment is too big
|
||||
par__environment_too_big_ash OK_bigvar
|
||||
par__environment_too_big_ash OK_bigvar_remote
|
||||
par__environment_too_big_ash OK_bigvar_quote
|
||||
par__environment_too_big_ash OK_bigvar_quote_remote
|
||||
par__environment_too_big_ash OK_bigfunc
|
||||
par__environment_too_big_ash OK_bigfunc_remote
|
||||
par__environment_too_big_ash OK_bigfunc_quote
|
||||
par__environment_too_big_ash OK_bigfunc_quote_remote
|
||||
par__environment_too_big_ash Rest should fail - functions not supported in ash
|
||||
par__environment_too_big_ash parallel: Error: Command line too long (7XXXX >= 6XXXX) at input 0: fail_bigvar
|
||||
par__environment_too_big_ash parallel: Error: Command line too long (7XXXX >= 6XXXX) at input 0: fail_bigvar_remote
|
||||
par__environment_too_big_ash parallel: Error: Command line too long (8XXXX >= 6XXXX) at input 0: fail_bigvar_quote
|
||||
par__environment_too_big_ash parallel: Error: Command line too long (8XXXX >= 6XXXX) at input 0: fail_bigvar_quote_remote
|
||||
par__environment_too_big_ash fail_bigfunc-not-supported
|
||||
par__environment_too_big_ash fail_bigfunc_remote-not-supported
|
||||
par__environment_too_big_ash fail_bigfunc_quote-not-supported
|
||||
par__environment_too_big_ash fail_bigfunc_quote_remote-not-supported
|
||||
par__environment_too_big_dash bug #5XXXX: env_parallel should warn if the environment is too big
|
||||
par__environment_too_big_dash OK_bigvar
|
||||
par__environment_too_big_dash OK_bigvar_remote
|
||||
|
@ -44,19 +26,19 @@ par__environment_too_big_zsh OK_bigfunc_remote
|
|||
par__environment_too_big_zsh OK_bigfunc_quote
|
||||
par__environment_too_big_zsh OK_bigfunc_quote_remote
|
||||
par__environment_too_big_zsh Rest should fail
|
||||
par__environment_too_big_zsh parallel: Error: Command line too long (6XXXX >= 5XXXX) at input 0: fail_bigvar
|
||||
par__environment_too_big_zsh parallel: Error: Command line too long (5XXXX >= 5XXXX) at input 0: fail_bigvar_remote
|
||||
par__environment_too_big_zsh parallel: Error: Command line too long (6XXXX >= 5XXXX) at input 0: fail_bigvar_quote
|
||||
par__environment_too_big_zsh parallel: Error: Command line too long (6XXXX >= 5XXXX) at input 0: fail_bigvar_quote_remote
|
||||
par__environment_too_big_zsh parallel: Error: Command line too long (6XXXX >= 5XXXX) at input 0: fail_bigfunc
|
||||
par__environment_too_big_zsh parallel: Error: Command line too long (7XXXX >= 5XXXX) at input 0: fail_bigfunc_remote
|
||||
par__environment_too_big_zsh parallel: Error: Command line too long (6XXXX >= 5XXXX) at input 0: fail_bigfunc_quote
|
||||
par__environment_too_big_zsh parallel: Error: Command line too long (6XXXX >= 5XXXX) at input 0: fail_bigfunc_quote_remote
|
||||
par__environment_too_big_zsh parallel: Error: Command line too long (6XXXX >= 6XXXX) at input 0: fail_bigvar
|
||||
par__environment_too_big_zsh parallel: Error: Command line too long (7XXXX >= 6XXXX) at input 0: fail_bigvar_remote
|
||||
par__environment_too_big_zsh parallel: Error: Command line too long (6XXXX >= 6XXXX) at input 0: fail_bigvar_quote
|
||||
par__environment_too_big_zsh parallel: Error: Command line too long (6XXXX >= 6XXXX) at input 0: fail_bigvar_quote_remote
|
||||
par__environment_too_big_zsh parallel: Error: Command line too long (6XXXX >= 6XXXX) at input 0: fail_bigfunc
|
||||
par__environment_too_big_zsh parallel: Error: Command line too long (7XXXX >= 6XXXX) at input 0: fail_bigfunc_remote
|
||||
par__environment_too_big_zsh parallel: Error: Command line too long (6XXXX >= 6XXXX) at input 0: fail_bigfunc_quote
|
||||
par__environment_too_big_zsh parallel: Error: Command line too long (6XXXX >= 6XXXX) at input 0: fail_bigfunc_quote_remote
|
||||
par__sockets_cores_threads ### Test --number-of-sockets/cores/threads
|
||||
par__sockets_cores_threads 1
|
||||
par__sockets_cores_threads 2
|
||||
par__sockets_cores_threads 4
|
||||
par__sockets_cores_threads 2
|
||||
par__sockets_cores_threads 8
|
||||
par__sockets_cores_threads 4
|
||||
par__sockets_cores_threads ### Test --use-sockets-instead-of-threads
|
||||
par__sockets_cores_threads threads done
|
||||
par__sockets_cores_threads sockets done
|
||||
|
@ -69,13 +51,13 @@ par_progress Computer:jobs running/jobs completed/%of started jobs/Average secon
|
|||
par_progress local:0/3/100%/9.9s [K
|
||||
par_progress
|
||||
par_progress Computers / CPU cores / Max jobs to run
|
||||
par_progress 1:local / 2 / 2
|
||||
par_progress 1:local / 4 / 4
|
||||
par_progress
|
||||
par_progress Computer:jobs running/jobs completed/%of started jobs/Average seconds to complete
|
||||
par_progress local:0/3/100%/9.9s [K
|
||||
par_progress
|
||||
par_progress Computers / CPU threads / Max jobs to run
|
||||
par_progress 1:local / 4 / 4
|
||||
par_progress 1:local / 8 / 8
|
||||
par_progress
|
||||
par_progress Computer:jobs running/jobs completed/%of started jobs/Average seconds to complete
|
||||
par_progress local:0/3/100%/9.9s [K
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
par_--rpl_group_bug Bug in --rpl group: $$1_
|
||||
par_--rpl_group_bug Good
|
||||
par_-q_perl_program ### test08 -q and perl
|
||||
par_-q_perl_program b
|
||||
par_-q_perl_program d
|
||||
|
@ -982,10 +984,10 @@ par_sem_quote ### sem --quote should not add empty argument
|
|||
par_sem_quote echo
|
||||
par_sem_quote
|
||||
par_shellcompletion ### --shellcompletion
|
||||
par_shellcompletion 1952015cc0c85c44d82d13e2673f4b28 -
|
||||
par_shellcompletion 1952015cc0c85c44d82d13e2673f4b28 -
|
||||
par_shellcompletion c23b2094e510526c322ea3af89b4c682 -
|
||||
par_shellcompletion c23b2094e510526c322ea3af89b4c682 -
|
||||
par_shellcompletion bf790ce8a53d1e7e5f8e78b063dc65bc -
|
||||
par_shellcompletion bf790ce8a53d1e7e5f8e78b063dc65bc -
|
||||
par_shellcompletion 2230e8ac0593f660fccd983596377613 -
|
||||
par_shellcompletion 2230e8ac0593f660fccd983596377613 -
|
||||
par_slow_pipe_regexp ### bug #53718: --pipe --regexp -N blocks
|
||||
par_slow_pipe_regexp This should take a few ms, but took more than 2 hours
|
||||
par_slow_pipe_regexp 0 1 1
|
||||
|
|
|
@ -1,3 +1,110 @@
|
|||
par_--match Basic match
|
||||
par_--match This works
|
||||
par_--match This works, too
|
||||
par_--match Simple CSV-parsing
|
||||
par_--match url=https://gnu.org/s/parallel filename=myfile
|
||||
par_--match Dummy --match for input source 1, real --match for input source 2
|
||||
par_--match This works
|
||||
par_--match Reuse --match
|
||||
par_--match ALL OK
|
||||
par_--match With --header :
|
||||
par_--match ALL OK
|
||||
par_--match Failure to match/Partial match
|
||||
par_--match parallel: Warning: 'FAILS' did not match '([a-z]+)'
|
||||
par_--match matches
|
||||
par_--match 1
|
||||
par_--match partly
|
||||
par_--match Test error: missing --match
|
||||
par_--match parallel: Error: {2.1} requires corresponding --match
|
||||
par_--match Test error: \001 in match
|
||||
par_--match parallel: Error: \001 is not supported in --match
|
||||
par_--match From man parallel_examples
|
||||
par_--match mkdir -p a && mv afile a
|
||||
par_--match mkdir -p b && mv bfile b
|
||||
par_--match mkdir -p a && mv adir a
|
||||
par_--match A. Dent
|
||||
par_--match F. Prefect
|
||||
par_--match T. McMillan
|
||||
par_--match Z. Beeblebrox
|
||||
par_--match 1969-12-31
|
||||
par_--match 2038-01-19
|
||||
par_--match 2002-06-01
|
||||
par_--match Domain: example.com Path: dir/page
|
||||
par_--match Domain: gnu.org Path: s/parallel
|
||||
par_--match Second: Babel fish, First: Arthur
|
||||
par_--match Second: Betelgeuse, First: Adams
|
||||
par_--match Second: Bistro, First: Arcturan
|
||||
par_--match Pan Galactic
|
||||
par_--match Gargle Blaster
|
||||
par_--match From DK/Denmark to DK/Denmark dial 00-45
|
||||
par_--match From DK/Denmark to US/United States dial 00-1
|
||||
par_--match From DK/Denmark to JP/Japan dial 00-81
|
||||
par_--match From DK/Denmark to AU/Australia dial 00-61
|
||||
par_--match From DK/Denmark to CA/Canada dial 00-1
|
||||
par_--match From DK/Denmark to RU/Russia dial 00-7
|
||||
par_--match From DK/Denmark to TH/Thailand dial 00-66
|
||||
par_--match From DK/Denmark to TW/Taiwan dial 00-886
|
||||
par_--match From US/United States to DK/Denmark dial 011-45
|
||||
par_--match From US/United States to US/United States dial 011-1
|
||||
par_--match From US/United States to JP/Japan dial 011-81
|
||||
par_--match From US/United States to AU/Australia dial 011-61
|
||||
par_--match From US/United States to CA/Canada dial 011-1
|
||||
par_--match From US/United States to RU/Russia dial 011-7
|
||||
par_--match From US/United States to TH/Thailand dial 011-66
|
||||
par_--match From US/United States to TW/Taiwan dial 011-886
|
||||
par_--match From JP/Japan to DK/Denmark dial 010-45
|
||||
par_--match From JP/Japan to US/United States dial 010-1
|
||||
par_--match From JP/Japan to JP/Japan dial 010-81
|
||||
par_--match From JP/Japan to AU/Australia dial 010-61
|
||||
par_--match From JP/Japan to CA/Canada dial 010-1
|
||||
par_--match From JP/Japan to RU/Russia dial 010-7
|
||||
par_--match From JP/Japan to TH/Thailand dial 010-66
|
||||
par_--match From JP/Japan to TW/Taiwan dial 010-886
|
||||
par_--match From AU/Australia to DK/Denmark dial 0011-45
|
||||
par_--match From AU/Australia to US/United States dial 0011-1
|
||||
par_--match From AU/Australia to JP/Japan dial 0011-81
|
||||
par_--match From AU/Australia to AU/Australia dial 0011-61
|
||||
par_--match From AU/Australia to CA/Canada dial 0011-1
|
||||
par_--match From AU/Australia to RU/Russia dial 0011-7
|
||||
par_--match From AU/Australia to TH/Thailand dial 0011-66
|
||||
par_--match From AU/Australia to TW/Taiwan dial 0011-886
|
||||
par_--match From CA/Canada to DK/Denmark dial 011-45
|
||||
par_--match From CA/Canada to US/United States dial 011-1
|
||||
par_--match From CA/Canada to JP/Japan dial 011-81
|
||||
par_--match From CA/Canada to AU/Australia dial 011-61
|
||||
par_--match From CA/Canada to CA/Canada dial 011-1
|
||||
par_--match From CA/Canada to RU/Russia dial 011-7
|
||||
par_--match From CA/Canada to TH/Thailand dial 011-66
|
||||
par_--match From CA/Canada to TW/Taiwan dial 011-886
|
||||
par_--match From RU/Russia to DK/Denmark dial 810-45
|
||||
par_--match From RU/Russia to US/United States dial 810-1
|
||||
par_--match From RU/Russia to JP/Japan dial 810-81
|
||||
par_--match From RU/Russia to AU/Australia dial 810-61
|
||||
par_--match From RU/Russia to CA/Canada dial 810-1
|
||||
par_--match From RU/Russia to RU/Russia dial 810-7
|
||||
par_--match From RU/Russia to TH/Thailand dial 810-66
|
||||
par_--match From RU/Russia to TW/Taiwan dial 810-886
|
||||
par_--match From TH/Thailand to DK/Denmark dial 001-45
|
||||
par_--match From TH/Thailand to US/United States dial 001-1
|
||||
par_--match From TH/Thailand to JP/Japan dial 001-81
|
||||
par_--match From TH/Thailand to AU/Australia dial 001-61
|
||||
par_--match From TH/Thailand to CA/Canada dial 001-1
|
||||
par_--match From TH/Thailand to RU/Russia dial 001-7
|
||||
par_--match From TH/Thailand to TH/Thailand dial 001-66
|
||||
par_--match From TH/Thailand to TW/Taiwan dial 001-886
|
||||
par_--match From TW/Taiwan to DK/Denmark dial 002-45
|
||||
par_--match From TW/Taiwan to US/United States dial 002-1
|
||||
par_--match From TW/Taiwan to JP/Japan dial 002-81
|
||||
par_--match From TW/Taiwan to AU/Australia dial 002-61
|
||||
par_--match From TW/Taiwan to CA/Canada dial 002-1
|
||||
par_--match From TW/Taiwan to RU/Russia dial 002-7
|
||||
par_--match From TW/Taiwan to TH/Thailand dial 002-66
|
||||
par_--match From TW/Taiwan to TW/Taiwan dial 002-886
|
||||
par_--match Capture groups CSV-parsing - not implemented
|
||||
par_--match url={url} filename={file} https://gnu.org/s/parallel,myfile
|
||||
par_--match Non posistional replacement fields - not implemented
|
||||
par_--match {.2} {.3} {.1} Gold,Heart_of
|
||||
par_--match TODO Ignore case?
|
||||
par_END ### Test -i and --replace: Replace with argument
|
||||
par_END replace
|
||||
par_END replace
|
||||
|
@ -19,10 +126,381 @@ par_END include this
|
|||
par__load_from_PARALLEL ### Test reading load from PARALLEL
|
||||
par__load_from_PARALLEL 8a7095c1c23bfadc311fe6b16d950582 -
|
||||
par__load_from_PARALLEL 8a7095c1c23bfadc311fe6b16d950582 -
|
||||
par__nice Check that --nice works
|
||||
par__nice load_10
|
||||
par__nice bzip2 18
|
||||
par__nice bzip2 18
|
||||
par__pipepart_spawn ### bug #46214: Using --pipepart doesnt spawn multiple jobs in version 20150922
|
||||
par__pipepart_spawn 1:local / 2+ / 2+
|
||||
par__quote_special_results ### Test --results on file systems with limited UTF8 support
|
||||
par__quote_special_results mkfs.btrfs
|
||||
par__quote_special_results mkfs.btrfs NOTE: several default settings have changed in version 5.15, please make sure
|
||||
par__quote_special_results mkfs.btrfs this does not affect your deployments:
|
||||
par__quote_special_results mkfs.btrfs - DUP for metadata (-m dup)
|
||||
par__quote_special_results mkfs.btrfs - enabled no-holes (-O no-holes)
|
||||
par__quote_special_results mkfs.btrfs - enabled free-space-tree (-R free-space-tree)
|
||||
par__quote_special_results mkfs.btrfs
|
||||
par__quote_special_results mkfs.btrfs Label: (null)
|
||||
par__quote_special_results mkfs.btrfs Node size: 16384
|
||||
par__quote_special_results mkfs.btrfs Sector size: 4096
|
||||
par__quote_special_results mkfs.btrfs Filesystem size: 301.00MiB
|
||||
par__quote_special_results mkfs.btrfs Block group profiles:
|
||||
par__quote_special_results mkfs.btrfs Data: single 8.00MiB
|
||||
par__quote_special_results mkfs.btrfs Metadata: DUP 32.00MiB
|
||||
par__quote_special_results mkfs.btrfs System: DUP 8.00MiB
|
||||
par__quote_special_results mkfs.btrfs SSD detected: no
|
||||
par__quote_special_results mkfs.btrfs Zoned device: no
|
||||
par__quote_special_results mkfs.btrfs Runtime features: free-space-tree
|
||||
par__quote_special_results mkfs.btrfs Checksum: crc32c
|
||||
par__quote_special_results mkfs.btrfs Number of devices: 1
|
||||
par__quote_special_results mkfs.btrfs Devices:
|
||||
par__quote_special_results mkfs.btrfs 1 301.00MiB /dev/shm/par-test-loop
|
||||
par__quote_special_results mkfs.btrfs
|
||||
par__quote_special_results mkfs.btrfs Filesystem 1K-blocks Used Available Use% Mounted on
|
||||
par__quote_special_results mkfs.btrfs /dev/loop 999999 99999 99999 9% /tmp/par-test-loop
|
||||
par__quote_special_results mkfs.btrfs . ./++ ./++++ ./++_ ./++__ ./++m ./++z ./+_ ./+__ ./+m ./+z ./,. ./,..
|
||||
par__quote_special_results mkfs.btrfs
|
||||
par__quote_special_results mkfs.btrfs . ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./
par__quote_special_results mkfs.btrfs ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./! ./" ./# ./$ ./% ./& ./' ./( ./) ./* ./++ ./+_ ./+z ./, ./- ./0 ./1 ./2 ./3 ./4 ./5 ./6 ./7 ./8 ./9 ./: ./; ./< ./= ./> ./? ./@ ./A ./B ./C ./D ./E ./F ./G ./H ./I ./J ./K ./L ./M ./N ./O ./P ./Q ./R ./S ./T ./U ./V ./W ./X ./Y ./Z ./[ ./\ ./] ./^ ./_ ./` ./a ./b ./c ./d ./e ./f ./g ./h ./i ./j ./k ./l ./m ./n ./o ./p ./q ./r ./s ./t ./u ./v ./w ./x ./y ./z ./{ ./| ./} ./~ ./ ./€
|
||||
par__quote_special_results mkfs.btrfs . ./€ ./<2F> ./‚ ./ƒ ./„ ./… ./† ./‡ ./ˆ ./‰ ./Š ./‹ ./Œ ./<2F> ./Ž ./<2F> ./<2F> ./‘ ./’ ./“ ./” ./• ./– ./— ./˜ ./™ ./š ./› ./œ ./<2F> ./ž ./Ÿ ./ ./¡ ./¢ ./£ ./¤ ./¥ ./¦ ./§ ./¨ ./© ./ª ./« ./¬ ./ ./® ./¯ ./° ./± ./² ./³ ./´ ./µ ./¶ ./· ./¸ ./¹ ./º ./» ./¼ ./½ ./¾ ./¿ ./À ./Á ./ ./à ./Ä ./Å ./Æ ./Ç ./È ./É ./Ê ./Ë ./Ì ./Í ./Î ./Ï ./Ð ./Ñ ./Ò ./Ó ./Ô ./Õ ./Ö ./× ./Ø ./Ù ./Ú ./Û ./Ü ./Ý ./Þ ./ß ./à ./á ./â ./ã ./ä ./å ./æ ./ç ./è ./é ./ê ./ë ./ì ./í ./î ./ï ./ð ./ñ ./ò ./ó ./ô ./õ ./ö ./÷ ./ø ./ù ./ú ./û ./ü ./ý ./þ ./ÿ
|
||||
par__quote_special_results mkfs.btrfs 301+0 records in
|
||||
par__quote_special_results mkfs.btrfs 301+0 records out
|
||||
par__quote_special_results mkfs.exfat Creating exFAT filesystem(/dev/shm/par-test-loop cluster size=32768)
|
||||
par__quote_special_results mkfs.exfat
|
||||
par__quote_special_results mkfs.exfat Writing volume boot record: done
|
||||
par__quote_special_results mkfs.exfat Writing backup volume boot record: done
|
||||
par__quote_special_results mkfs.exfat Fat table creation: done
|
||||
par__quote_special_results mkfs.exfat Allocation bitmap creation: done
|
||||
par__quote_special_results mkfs.exfat Upcase table creation: done
|
||||
par__quote_special_results mkfs.exfat Writing root directory entry: done
|
||||
par__quote_special_results mkfs.exfat Synchronizing...
|
||||
par__quote_special_results mkfs.exfat
|
||||
par__quote_special_results mkfs.exfat exFAT format complete!
|
||||
par__quote_special_results mkfs.exfat Filesystem 1K-blocks Used Available Use% Mounted on
|
||||
par__quote_special_results mkfs.exfat /dev/loop 999999 99999 99999 9% /tmp/par-test-loop
|
||||
par__quote_special_results mkfs.exfat . ./++ ./++++ ./++_ ./++__ ./++m ./++z ./+_ ./+__ ./+m ./+z ./,
|
||||
par__quote_special_results mkfs.exfat . ./ ./! ./# ./$ ./% ./& ./' ./( ./) ./++ ./+01 ./+02 ./+03 ./+04 ./+05 ./+06 ./+07 ./+08 ./+09 ./+0a ./+0b ./+0c ./+0d ./+0e ./+0f ./+10 ./+11 ./+12 ./+13 ./+14 ./+15 ./+16 ./+17 ./+18 ./+19 ./+1a ./+1b ./+1c ./+1d ./+1e ./+1f ./+80 ./+_ ./+a ./+b ./+d ./+g ./+k ./+l ./+p ./+y ./+z ./, ./- ./0 ./1 ./2 ./3 ./4 ./5 ./6 ./7 ./8 ./9 ./; ./= ./@ ./A ./B ./C ./D ./E ./F ./G ./H ./I ./J ./K ./L ./M ./N ./O ./P ./Q ./R ./S ./T ./U ./V ./W ./X ./Y ./Z ./[ ./] ./^ ./_ ./` ./{ ./} ./~ ./
|
||||
par__quote_special_results mkfs.exfat . ./+80 ./+81 ./+82 ./+83 ./+84 ./+85 ./+86 ./+87 ./+88 ./+89 ./+8a ./+8b ./+8c ./+8d ./+8e ./+8f ./+90 ./+91 ./+92 ./+93 ./+94 ./+95 ./+96 ./+97 ./+98 ./+99 ./+9a ./+9b ./+9c ./+9d ./+9e ./+9f ./+a0 ./+a1 ./+a2 ./+a3 ./+a4 ./+a5 ./+a6 ./+a7 ./+a8 ./+a9 ./+aa ./+ab ./+ac ./+ad ./+ae ./+af ./+b0 ./+b1 ./+b2 ./+b3 ./+b4 ./+b5 ./+b6 ./+b7 ./+b8 ./+b9 ./+ba ./+bb ./+bc ./+bd ./+be ./+bf ./+c0 ./+c1 ./+c2 ./+c3 ./+c4 ./+c5 ./+c6 ./+c7 ./+c8 ./+c9 ./+ca ./+cb ./+cc ./+cd ./+ce ./+cf ./+d0 ./+d1 ./+d2 ./+d3 ./+d4 ./+d5 ./+d6 ./+d7 ./+d8 ./+d9 ./+da ./+db ./+dc ./+dd ./+de ./+df ./+e0 ./+e1 ./+e2 ./+e3 ./+e4 ./+e5 ./+e6 ./+e7 ./+e8 ./+e9 ./+ea ./+eb ./+ec ./+ed ./+ee ./+ef ./+f0 ./+f1 ./+f2 ./+f3 ./+f4 ./+f5 ./+f6 ./+f7 ./+f8 ./+f9 ./+fa ./+fb ./+fc ./+fd ./+fe ./+ff
|
||||
par__quote_special_results mkfs.exfat 301+0 records in
|
||||
par__quote_special_results mkfs.exfat 301+0 records out
|
||||
par__quote_special_results mkfs.ext2 Discarding device blocks: 0/77056 done
|
||||
par__quote_special_results mkfs.ext2 Creating filesystem with 77056 4k blocks and 77088 inodes
|
||||
par__quote_special_results mkfs.ext2 Superblock backups stored on blocks:
|
||||
par__quote_special_results mkfs.ext2 32768
|
||||
par__quote_special_results mkfs.ext2
|
||||
par__quote_special_results mkfs.ext2 Allocating group tables: 0/3 done
|
||||
par__quote_special_results mkfs.ext2 Writing inode tables: 0/3 done
|
||||
par__quote_special_results mkfs.ext2 Writing superblocks and filesystem accounting information: 0/3 done
|
||||
par__quote_special_results mkfs.ext2
|
||||
par__quote_special_results mkfs.ext2 Filesystem 1K-blocks Used Available Use% Mounted on
|
||||
par__quote_special_results mkfs.ext2 /dev/loop 999999 99999 99999 9% /tmp/par-test-loop
|
||||
par__quote_special_results mkfs.ext2 . ./++ ./++++ ./++_ ./++__ ./++m ./++z ./+_ ./+__ ./+m ./+z ./,. ./,..
|
||||
par__quote_special_results mkfs.ext2
|
||||
par__quote_special_results mkfs.ext2 . ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./
par__quote_special_results mkfs.ext2 ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./! ./" ./# ./$ ./% ./& ./' ./( ./) ./* ./++ ./+_ ./+z ./, ./- ./0 ./1 ./2 ./3 ./4 ./5 ./6 ./7 ./8 ./9 ./: ./; ./< ./= ./> ./? ./@ ./A ./B ./C ./D ./E ./F ./G ./H ./I ./J ./K ./L ./M ./N ./O ./P ./Q ./R ./S ./T ./U ./V ./W ./X ./Y ./Z ./[ ./\ ./] ./^ ./_ ./` ./a ./b ./c ./d ./e ./f ./g ./h ./i ./j ./k ./l ./m ./n ./o ./p ./q ./r ./s ./t ./u ./v ./w ./x ./y ./z ./{ ./| ./} ./~ ./ ./€
|
||||
par__quote_special_results mkfs.ext2 . ./€ ./<2F> ./‚ ./ƒ ./„ ./… ./† ./‡ ./ˆ ./‰ ./Š ./‹ ./Œ ./<2F> ./Ž ./<2F> ./<2F> ./‘ ./’ ./“ ./” ./• ./– ./— ./˜ ./™ ./š ./› ./œ ./<2F> ./ž ./Ÿ ./ ./¡ ./¢ ./£ ./¤ ./¥ ./¦ ./§ ./¨ ./© ./ª ./« ./¬ ./ ./® ./¯ ./° ./± ./² ./³ ./´ ./µ ./¶ ./· ./¸ ./¹ ./º ./» ./¼ ./½ ./¾ ./¿ ./À ./Á ./ ./à ./Ä ./Å ./Æ ./Ç ./È ./É ./Ê ./Ë ./Ì ./Í ./Î ./Ï ./Ð ./Ñ ./Ò ./Ó ./Ô ./Õ ./Ö ./× ./Ø ./Ù ./Ú ./Û ./Ü ./Ý ./Þ ./ß ./à ./á ./â ./ã ./ä ./å ./æ ./ç ./è ./é ./ê ./ë ./ì ./í ./î ./ï ./ð ./ñ ./ò ./ó ./ô ./õ ./ö ./÷ ./ø ./ù ./ú ./û ./ü ./ý ./þ ./ÿ
|
||||
par__quote_special_results mkfs.ext2 301+0 records in
|
||||
par__quote_special_results mkfs.ext2 301+0 records out
|
||||
par__quote_special_results mkfs.ext3 Discarding device blocks: 0/77056 done
|
||||
par__quote_special_results mkfs.ext3 Creating filesystem with 77056 4k blocks and 77088 inodes
|
||||
par__quote_special_results mkfs.ext3 Superblock backups stored on blocks:
|
||||
par__quote_special_results mkfs.ext3 32768
|
||||
par__quote_special_results mkfs.ext3
|
||||
par__quote_special_results mkfs.ext3 Allocating group tables: 0/3 done
|
||||
par__quote_special_results mkfs.ext3 Writing inode tables: 0/3 done
|
||||
par__quote_special_results mkfs.ext3 Creating journal (4096 blocks): done
|
||||
par__quote_special_results mkfs.ext3 Writing superblocks and filesystem accounting information: 0/3 done
|
||||
par__quote_special_results mkfs.ext3
|
||||
par__quote_special_results mkfs.ext3 Filesystem 1K-blocks Used Available Use% Mounted on
|
||||
par__quote_special_results mkfs.ext3 /dev/loop 999999 99999 99999 9% /tmp/par-test-loop
|
||||
par__quote_special_results mkfs.ext3 . ./++ ./++++ ./++_ ./++__ ./++m ./++z ./+_ ./+__ ./+m ./+z ./,. ./,..
|
||||
par__quote_special_results mkfs.ext3
|
||||
par__quote_special_results mkfs.ext3 . ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./
par__quote_special_results mkfs.ext3 ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./! ./" ./# ./$ ./% ./& ./' ./( ./) ./* ./++ ./+_ ./+z ./, ./- ./0 ./1 ./2 ./3 ./4 ./5 ./6 ./7 ./8 ./9 ./: ./; ./< ./= ./> ./? ./@ ./A ./B ./C ./D ./E ./F ./G ./H ./I ./J ./K ./L ./M ./N ./O ./P ./Q ./R ./S ./T ./U ./V ./W ./X ./Y ./Z ./[ ./\ ./] ./^ ./_ ./` ./a ./b ./c ./d ./e ./f ./g ./h ./i ./j ./k ./l ./m ./n ./o ./p ./q ./r ./s ./t ./u ./v ./w ./x ./y ./z ./{ ./| ./} ./~ ./ ./€
|
||||
par__quote_special_results mkfs.ext3 . ./€ ./<2F> ./‚ ./ƒ ./„ ./… ./† ./‡ ./ˆ ./‰ ./Š ./‹ ./Œ ./<2F> ./Ž ./<2F> ./<2F> ./‘ ./’ ./“ ./” ./• ./– ./— ./˜ ./™ ./š ./› ./œ ./<2F> ./ž ./Ÿ ./ ./¡ ./¢ ./£ ./¤ ./¥ ./¦ ./§ ./¨ ./© ./ª ./« ./¬ ./ ./® ./¯ ./° ./± ./² ./³ ./´ ./µ ./¶ ./· ./¸ ./¹ ./º ./» ./¼ ./½ ./¾ ./¿ ./À ./Á ./ ./à ./Ä ./Å ./Æ ./Ç ./È ./É ./Ê ./Ë ./Ì ./Í ./Î ./Ï ./Ð ./Ñ ./Ò ./Ó ./Ô ./Õ ./Ö ./× ./Ø ./Ù ./Ú ./Û ./Ü ./Ý ./Þ ./ß ./à ./á ./â ./ã ./ä ./å ./æ ./ç ./è ./é ./ê ./ë ./ì ./í ./î ./ï ./ð ./ñ ./ò ./ó ./ô ./õ ./ö ./÷ ./ø ./ù ./ú ./û ./ü ./ý ./þ ./ÿ
|
||||
par__quote_special_results mkfs.ext3 301+0 records in
|
||||
par__quote_special_results mkfs.ext3 301+0 records out
|
||||
par__quote_special_results mkfs.ext4 Discarding device blocks: 0/77056 done
|
||||
par__quote_special_results mkfs.ext4 Creating filesystem with 77056 4k blocks and 77088 inodes
|
||||
par__quote_special_results mkfs.ext4 Superblock backups stored on blocks:
|
||||
par__quote_special_results mkfs.ext4 32768
|
||||
par__quote_special_results mkfs.ext4
|
||||
par__quote_special_results mkfs.ext4 Allocating group tables: 0/3 done
|
||||
par__quote_special_results mkfs.ext4 Writing inode tables: 0/3 done
|
||||
par__quote_special_results mkfs.ext4 Creating journal (4096 blocks): done
|
||||
par__quote_special_results mkfs.ext4 Writing superblocks and filesystem accounting information: 0/3 done
|
||||
par__quote_special_results mkfs.ext4
|
||||
par__quote_special_results mkfs.ext4 Filesystem 1K-blocks Used Available Use% Mounted on
|
||||
par__quote_special_results mkfs.ext4 /dev/loop 999999 99999 99999 9% /tmp/par-test-loop
|
||||
par__quote_special_results mkfs.ext4 . ./++ ./++++ ./++_ ./++__ ./++m ./++z ./+_ ./+__ ./+m ./+z ./,. ./,..
|
||||
par__quote_special_results mkfs.ext4
|
||||
par__quote_special_results mkfs.ext4 . ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./
par__quote_special_results mkfs.ext4 ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./! ./" ./# ./$ ./% ./& ./' ./( ./) ./* ./++ ./+_ ./+z ./, ./- ./0 ./1 ./2 ./3 ./4 ./5 ./6 ./7 ./8 ./9 ./: ./; ./< ./= ./> ./? ./@ ./A ./B ./C ./D ./E ./F ./G ./H ./I ./J ./K ./L ./M ./N ./O ./P ./Q ./R ./S ./T ./U ./V ./W ./X ./Y ./Z ./[ ./\ ./] ./^ ./_ ./` ./a ./b ./c ./d ./e ./f ./g ./h ./i ./j ./k ./l ./m ./n ./o ./p ./q ./r ./s ./t ./u ./v ./w ./x ./y ./z ./{ ./| ./} ./~ ./ ./€
|
||||
par__quote_special_results mkfs.ext4 . ./€ ./<2F> ./‚ ./ƒ ./„ ./… ./† ./‡ ./ˆ ./‰ ./Š ./‹ ./Œ ./<2F> ./Ž ./<2F> ./<2F> ./‘ ./’ ./“ ./” ./• ./– ./— ./˜ ./™ ./š ./› ./œ ./<2F> ./ž ./Ÿ ./ ./¡ ./¢ ./£ ./¤ ./¥ ./¦ ./§ ./¨ ./© ./ª ./« ./¬ ./ ./® ./¯ ./° ./± ./² ./³ ./´ ./µ ./¶ ./· ./¸ ./¹ ./º ./» ./¼ ./½ ./¾ ./¿ ./À ./Á ./ ./à ./Ä ./Å ./Æ ./Ç ./È ./É ./Ê ./Ë ./Ì ./Í ./Î ./Ï ./Ð ./Ñ ./Ò ./Ó ./Ô ./Õ ./Ö ./× ./Ø ./Ù ./Ú ./Û ./Ü ./Ý ./Þ ./ß ./à ./á ./â ./ã ./ä ./å ./æ ./ç ./è ./é ./ê ./ë ./ì ./í ./î ./ï ./ð ./ñ ./ò ./ó ./ô ./õ ./ö ./÷ ./ø ./ù ./ú ./û ./ü ./ý ./þ ./ÿ
|
||||
par__quote_special_results mkfs.ext4 301+0 records in
|
||||
par__quote_special_results mkfs.ext4 301+0 records out
|
||||
par__quote_special_results mkfs.reiserfs -fq Filesystem 1K-blocks Used Available Use% Mounted on
|
||||
par__quote_special_results mkfs.reiserfs -fq /dev/loop 999999 99999 99999 9% /tmp/par-test-loop
|
||||
par__quote_special_results mkfs.reiserfs -fq . ./++ ./++++ ./++_ ./++__ ./++m ./++z ./+_ ./+__ ./+m ./+z ./,. ./,..
|
||||
par__quote_special_results mkfs.reiserfs -fq
|
||||
par__quote_special_results mkfs.reiserfs -fq . ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./
par__quote_special_results mkfs.reiserfs -fq ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./! ./" ./# ./$ ./% ./& ./' ./( ./) ./* ./++ ./+_ ./+z ./, ./- ./0 ./1 ./2 ./3 ./4 ./5 ./6 ./7 ./8 ./9 ./: ./; ./< ./= ./> ./? ./@ ./A ./B ./C ./D ./E ./F ./G ./H ./I ./J ./K ./L ./M ./N ./O ./P ./Q ./R ./S ./T ./U ./V ./W ./X ./Y ./Z ./[ ./\ ./] ./^ ./_ ./` ./a ./b ./c ./d ./e ./f ./g ./h ./i ./j ./k ./l ./m ./n ./o ./p ./q ./r ./s ./t ./u ./v ./w ./x ./y ./z ./{ ./| ./} ./~ ./ ./€
|
||||
par__quote_special_results mkfs.reiserfs -fq . ./€ ./<2F> ./‚ ./ƒ ./„ ./… ./† ./‡ ./ˆ ./‰ ./Š ./‹ ./Œ ./<2F> ./Ž ./<2F> ./<2F> ./‘ ./’ ./“ ./” ./• ./– ./— ./˜ ./™ ./š ./› ./œ ./<2F> ./ž ./Ÿ ./ ./¡ ./¢ ./£ ./¤ ./¥ ./¦ ./§ ./¨ ./© ./ª ./« ./¬ ./ ./® ./¯ ./° ./± ./² ./³ ./´ ./µ ./¶ ./· ./¸ ./¹ ./º ./» ./¼ ./½ ./¾ ./¿ ./À ./Á ./ ./à ./Ä ./Å ./Æ ./Ç ./È ./É ./Ê ./Ë ./Ì ./Í ./Î ./Ï ./Ð ./Ñ ./Ò ./Ó ./Ô ./Õ ./Ö ./× ./Ø ./Ù ./Ú ./Û ./Ü ./Ý ./Þ ./ß ./à ./á ./â ./ã ./ä ./å ./æ ./ç ./è ./é ./ê ./ë ./ì ./í ./î ./ï ./ð ./ñ ./ò ./ó ./ô ./õ ./ö ./÷ ./ø ./ù ./ú ./û ./ü ./ý ./þ ./ÿ
|
||||
par__quote_special_results mkfs.reiserfs -fq 301+0 records in
|
||||
par__quote_special_results mkfs.reiserfs -fq 301+0 records out
|
||||
par__quote_special_results mkfs.reiserfs -fq mkfs.reiserfs 3.6.27
|
||||
par__quote_special_results mkfs.reiserfs -fq
|
||||
par__quote_special_results mkfs.ntfs -F Cluster size has been automatically set to 4096 bytes.
|
||||
par__quote_special_results mkfs.ntfs -F Initializing device with zeroes: 0% 0% 1% 2% 3% 4% 5% 6% 7% 8% 9% 10% 11% 12% 13% 14% 15% 16% 17% 18% 19% 20% 21% 22% 23% 24% 25% 26% 27% 28% 29% 30% 31% 32% 33% 34% 35% 36% 37% 38% 39% 40% 41% 42% 43% 44% 45% 46% 47% 48% 49% 50% 51% 52% 53% 54% 55% 56% 57% 58% 59% 60% 61% 62% 63% 64% 65% 66% 67% 68% 69% 70% 71% 72% 73% 74% 75% 76% 77% 78% 79% 80% 81% 82% 83% 84% 85% 86% 87% 88% 89% 90% 91% 92% 93% 94% 95% 96% 97% 98% 99%100% - Done.
|
||||
par__quote_special_results mkfs.ntfs -F Creating NTFS volume structures.
|
||||
par__quote_special_results mkfs.ntfs -F mkntfs completed successfully. Have a nice day.
|
||||
par__quote_special_results mkfs.ntfs -F Filesystem 1K-blocks Used Available Use% Mounted on
|
||||
par__quote_special_results mkfs.ntfs -F /dev/loop 999999 99999 99999 9% /tmp/par-test-loop
|
||||
par__quote_special_results mkfs.ntfs -F . ./++ ./++++ ./++_ ./++__ ./++m ./++z ./+_ ./+__ ./+m ./+z ./,. ./,..
|
||||
par__quote_special_results mkfs.ntfs -F
|
||||
par__quote_special_results mkfs.ntfs -F . ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./
par__quote_special_results mkfs.ntfs -F ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./! ./" ./# ./$ ./% ./& ./' ./( ./) ./* ./++ ./+80 ./+_ ./+z ./, ./- ./0 ./1 ./2 ./3 ./4 ./5 ./6 ./7 ./8 ./9 ./: ./; ./< ./= ./> ./? ./@ ./A ./B ./C ./D ./E ./F ./G ./H ./I ./J ./K ./L ./M ./N ./O ./P ./Q ./R ./S ./T ./U ./V ./W ./X ./Y ./Z ./[ ./\ ./] ./^ ./_ ./` ./a ./b ./c ./d ./e ./f ./g ./h ./i ./j ./k ./l ./m ./n ./o ./p ./q ./r ./s ./t ./u ./v ./w ./x ./y ./z ./{ ./| ./} ./~ ./
|
||||
par__quote_special_results mkfs.ntfs -F . ./+80 ./+81 ./+82 ./+83 ./+84 ./+85 ./+86 ./+87 ./+88 ./+89 ./+8a ./+8b ./+8c ./+8d ./+8e ./+8f ./+90 ./+91 ./+92 ./+93 ./+94 ./+95 ./+96 ./+97 ./+98 ./+99 ./+9a ./+9b ./+9c ./+9d ./+9e ./+9f ./+a0 ./+a1 ./+a2 ./+a3 ./+a4 ./+a5 ./+a6 ./+a7 ./+a8 ./+a9 ./+aa ./+ab ./+ac ./+ad ./+ae ./+af ./+b0 ./+b1 ./+b2 ./+b3 ./+b4 ./+b5 ./+b6 ./+b7 ./+b8 ./+b9 ./+ba ./+bb ./+bc ./+bd ./+be ./+bf ./+c0 ./+c1 ./+c2 ./+c3 ./+c4 ./+c5 ./+c6 ./+c7 ./+c8 ./+c9 ./+ca ./+cb ./+cc ./+cd ./+ce ./+cf ./+d0 ./+d1 ./+d2 ./+d3 ./+d4 ./+d5 ./+d6 ./+d7 ./+d8 ./+d9 ./+da ./+db ./+dc ./+dd ./+de ./+df ./+e0 ./+e1 ./+e2 ./+e3 ./+e4 ./+e5 ./+e6 ./+e7 ./+e8 ./+e9 ./+ea ./+eb ./+ec ./+ed ./+ee ./+ef ./+f0 ./+f1 ./+f2 ./+f3 ./+f4 ./+f5 ./+f6 ./+f7 ./+f8 ./+f9 ./+fa ./+fb ./+fc ./+fd ./+fe ./+ff
|
||||
par__quote_special_results mkfs.ntfs -F 301+0 records in
|
||||
par__quote_special_results mkfs.ntfs -F 301+0 records out
|
||||
par__quote_special_results mkfs.ntfs -F /dev/shm/par-test-loop is not a block device.
|
||||
par__quote_special_results mkfs.ntfs -F mkntfs forced anyway.
|
||||
par__quote_special_results mkfs.ntfs -F The sector size was not specified for /dev/shm/par-test-loop and it could not be obtained automatically. It has been set to 512 bytes.
|
||||
par__quote_special_results mkfs.ntfs -F The partition start sector was not specified for /dev/shm/par-test-loop and it could not be obtained automatically. It has been set to 0.
|
||||
par__quote_special_results mkfs.ntfs -F The number of sectors per track was not specified for /dev/shm/par-test-loop and it could not be obtained automatically. It has been set to 0.
|
||||
par__quote_special_results mkfs.ntfs -F The number of heads was not specified for /dev/shm/par-test-loop and it could not be obtained automatically. It has been set to 0.
|
||||
par__quote_special_results mkfs.ntfs -F To boot from a device, Windows needs the 'partition start sector', the 'sectors per track' and the 'number of heads' to be set.
|
||||
par__quote_special_results mkfs.ntfs -F Windows will not be able to boot from this device.
|
||||
par__quote_special_results mkfs.xfs -f meta-data=/dev/shm/par-test-loop isize=512 agcount=4, agsize=19264 blks
|
||||
par__quote_special_results mkfs.xfs -f = sectsz=512 attr=2, projid32bit=1
|
||||
par__quote_special_results mkfs.xfs -f data = bsize=4096 blocks=77056, imaxpct=25
|
||||
par__quote_special_results mkfs.xfs -f = sunit=0 swidth=0 blks
|
||||
par__quote_special_results mkfs.xfs -f naming =version 2 bsize=4096 ascii-ci=0, ftype=1
|
||||
par__quote_special_results mkfs.xfs -f = sectsz=512 sunit=0 blks, lazy-count=1
|
||||
par__quote_special_results mkfs.xfs -f realtime =none extsz=4096 blocks=0, rtextents=0
|
||||
par__quote_special_results mkfs.xfs -f Filesystem 1K-blocks Used Available Use% Mounted on
|
||||
par__quote_special_results mkfs.xfs -f /dev/loop 999999 99999 99999 9% /tmp/par-test-loop
|
||||
par__quote_special_results mkfs.xfs -f . ./++ ./++++ ./++_ ./++__ ./++m ./++z ./+_ ./+__ ./+m ./+z ./,. ./,..
|
||||
par__quote_special_results mkfs.xfs -f
|
||||
par__quote_special_results mkfs.xfs -f . ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./
par__quote_special_results mkfs.xfs -f ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./! ./" ./# ./$ ./% ./& ./' ./( ./) ./* ./++ ./+_ ./+z ./, ./- ./0 ./1 ./2 ./3 ./4 ./5 ./6 ./7 ./8 ./9 ./: ./; ./< ./= ./> ./? ./@ ./A ./B ./C ./D ./E ./F ./G ./H ./I ./J ./K ./L ./M ./N ./O ./P ./Q ./R ./S ./T ./U ./V ./W ./X ./Y ./Z ./[ ./\ ./] ./^ ./_ ./` ./a ./b ./c ./d ./e ./f ./g ./h ./i ./j ./k ./l ./m ./n ./o ./p ./q ./r ./s ./t ./u ./v ./w ./x ./y ./z ./{ ./| ./} ./~ ./ ./€
|
||||
par__quote_special_results mkfs.xfs -f . ./€ ./<2F> ./‚ ./ƒ ./„ ./… ./† ./‡ ./ˆ ./‰ ./Š ./‹ ./Œ ./<2F> ./Ž ./<2F> ./<2F> ./‘ ./’ ./“ ./” ./• ./– ./— ./˜ ./™ ./š ./› ./œ ./<2F> ./ž ./Ÿ ./ ./¡ ./¢ ./£ ./¤ ./¥ ./¦ ./§ ./¨ ./© ./ª ./« ./¬ ./ ./® ./¯ ./° ./± ./² ./³ ./´ ./µ ./¶ ./· ./¸ ./¹ ./º ./» ./¼ ./½ ./¾ ./¿ ./À ./Á ./ ./à ./Ä ./Å ./Æ ./Ç ./È ./É ./Ê ./Ë ./Ì ./Í ./Î ./Ï ./Ð ./Ñ ./Ò ./Ó ./Ô ./Õ ./Ö ./× ./Ø ./Ù ./Ú ./Û ./Ü ./Ý ./Þ ./ß ./à ./á ./â ./ã ./ä ./å ./æ ./ç ./è ./é ./ê ./ë ./ì ./í ./î ./ï ./ð ./ñ ./ò ./ó ./ô ./õ ./ö ./÷ ./ø ./ù ./ú ./û ./ü ./ý ./þ ./ÿ
|
||||
par__quote_special_results mkfs.xfs -f 301+0 records in
|
||||
par__quote_special_results mkfs.xfs -f 301+0 records out
|
||||
par__quote_special_results mkfs.minix 21856 inodes
|
||||
par__quote_special_results mkfs.minix 65535 blocks
|
||||
par__quote_special_results mkfs.minix Firstdatazone=696 (696)
|
||||
par__quote_special_results mkfs.minix Zonesize=1024
|
||||
par__quote_special_results mkfs.minix Maxsize=268966912
|
||||
par__quote_special_results mkfs.minix
|
||||
par__quote_special_results mkfs.minix Filesystem 1K-blocks Used Available Use% Mounted on
|
||||
par__quote_special_results mkfs.minix /dev/loop 999999 99999 99999 9% /tmp/par-test-loop
|
||||
par__quote_special_results mkfs.minix . ./++ ./++++ ./++_ ./++__ ./++m ./++z ./+_ ./+__ ./+m ./+z ./,. ./,..
|
||||
par__quote_special_results mkfs.minix
|
||||
par__quote_special_results mkfs.minix . ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./
par__quote_special_results mkfs.minix ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./! ./" ./# ./$ ./% ./& ./' ./( ./) ./* ./++ ./+_ ./+z ./, ./- ./0 ./1 ./2 ./3 ./4 ./5 ./6 ./7 ./8 ./9 ./: ./; ./< ./= ./> ./? ./@ ./A ./B ./C ./D ./E ./F ./G ./H ./I ./J ./K ./L ./M ./N ./O ./P ./Q ./R ./S ./T ./U ./V ./W ./X ./Y ./Z ./[ ./\ ./] ./^ ./_ ./` ./a ./b ./c ./d ./e ./f ./g ./h ./i ./j ./k ./l ./m ./n ./o ./p ./q ./r ./s ./t ./u ./v ./w ./x ./y ./z ./{ ./| ./} ./~ ./ ./€
|
||||
par__quote_special_results mkfs.minix . ./€ ./<2F> ./‚ ./ƒ ./„ ./… ./† ./‡ ./ˆ ./‰ ./Š ./‹ ./Œ ./<2F> ./Ž ./<2F> ./<2F> ./‘ ./’ ./“ ./” ./• ./– ./— ./˜ ./™ ./š ./› ./œ ./<2F> ./ž ./Ÿ ./ ./¡ ./¢ ./£ ./¤ ./¥ ./¦ ./§ ./¨ ./© ./ª ./« ./¬ ./ ./® ./¯ ./° ./± ./² ./³ ./´ ./µ ./¶ ./· ./¸ ./¹ ./º ./» ./¼ ./½ ./¾ ./¿ ./À ./Á ./ ./à ./Ä ./Å ./Æ ./Ç ./È ./É ./Ê ./Ë ./Ì ./Í ./Î ./Ï ./Ð ./Ñ ./Ò ./Ó ./Ô ./Õ ./Ö ./× ./Ø ./Ù ./Ú ./Û ./Ü ./Ý ./Þ ./ß ./à ./á ./â ./ã ./ä ./å ./æ ./ç ./è ./é ./ê ./ë ./ì ./í ./î ./ï ./ð ./ñ ./ò ./ó ./ô ./õ ./ö ./÷ ./ø ./ù ./ú ./û ./ü ./ý ./þ ./ÿ
|
||||
par__quote_special_results mkfs.minix 301+0 records in
|
||||
par__quote_special_results mkfs.minix 301+0 records out
|
||||
par__quote_special_results mkfs.fat mkfs.fat 4.2 (2021-01-31)
|
||||
par__quote_special_results mkfs.fat Filesystem 1K-blocks Used Available Use% Mounted on
|
||||
par__quote_special_results mkfs.fat /dev/loop 999999 99999 99999 9% /tmp/par-test-loop
|
||||
par__quote_special_results mkfs.fat . ./++ ./++++ ./++_ ./++__ ./++m ./++z ./+_ ./+__ ./+m ./+z ./,
|
||||
par__quote_special_results mkfs.fat . ./! ./# ./$ ./% ./& ./' ./( ./) ./++ ./+01 ./+02 ./+03 ./+04 ./+05 ./+06 ./+07 ./+08 ./+09 ./+0a ./+0b ./+0c ./+0d ./+0e ./+0f ./+10 ./+11 ./+12 ./+13 ./+14 ./+15 ./+16 ./+17 ./+18 ./+19 ./+1a ./+1b ./+1c ./+1d ./+1e ./+1f ./+20 ./+_ ./+a ./+b ./+d ./+g ./+k ./+l ./+p ./+y ./+z ./, ./- ./0 ./1 ./2 ./3 ./4 ./5 ./6 ./7 ./8 ./9 ./; ./= ./@ ./A ./B ./C ./D ./E ./F ./G ./H ./I ./J ./K ./L ./M ./N ./O ./P ./Q ./R ./S ./T ./U ./V ./W ./X ./Y ./Z ./[ ./] ./^ ./_ ./` ./{ ./} ./~ ./ ./€
|
||||
par__quote_special_results mkfs.fat . ./€ ./<2F> ./‚ ./ƒ ./„ ./… ./† ./‡ ./ˆ ./‰ ./Š ./‹ ./Œ ./<2F> ./Ž ./<2F> ./<2F> ./‘ ./’ ./“ ./” ./• ./– ./— ./˜ ./™ ./š ./› ./œ ./<2F> ./ž ./Ÿ ./ ./¡ ./¢ ./£ ./¤ ./¥ ./¦ ./§ ./¨ ./© ./ª ./« ./¬ ./ ./® ./¯ ./° ./± ./² ./³ ./´ ./µ ./¶ ./· ./¸ ./¹ ./º ./» ./¼ ./½ ./¾ ./¿ ./À ./Á ./ ./à ./Ä ./Å ./Æ ./Ç ./È ./É ./Ê ./Ë ./Ì ./Í ./Î ./Ï ./Ð ./Ñ ./Ò ./Ó ./Ô ./Õ ./Ö ./× ./Ø ./Ù ./Ú ./Û ./Ü ./Ý ./Þ ./ß ./÷ ./ÿ
|
||||
par__quote_special_results mkfs.fat 301+0 records in
|
||||
par__quote_special_results mkfs.fat 301+0 records out
|
||||
par__quote_special_results mkfs.vfat mkfs.fat 4.2 (2021-01-31)
|
||||
par__quote_special_results mkfs.vfat Filesystem 1K-blocks Used Available Use% Mounted on
|
||||
par__quote_special_results mkfs.vfat /dev/loop 999999 99999 99999 9% /tmp/par-test-loop
|
||||
par__quote_special_results mkfs.vfat . ./++ ./++++ ./++_ ./++__ ./++m ./++z ./+_ ./+__ ./+m ./+z ./,
|
||||
par__quote_special_results mkfs.vfat . ./! ./# ./$ ./% ./& ./' ./( ./) ./++ ./+01 ./+02 ./+03 ./+04 ./+05 ./+06 ./+07 ./+08 ./+09 ./+0a ./+0b ./+0c ./+0d ./+0e ./+0f ./+10 ./+11 ./+12 ./+13 ./+14 ./+15 ./+16 ./+17 ./+18 ./+19 ./+1a ./+1b ./+1c ./+1d ./+1e ./+1f ./+20 ./+_ ./+a ./+b ./+d ./+g ./+k ./+l ./+p ./+y ./+z ./, ./- ./0 ./1 ./2 ./3 ./4 ./5 ./6 ./7 ./8 ./9 ./; ./= ./@ ./A ./B ./C ./D ./E ./F ./G ./H ./I ./J ./K ./L ./M ./N ./O ./P ./Q ./R ./S ./T ./U ./V ./W ./X ./Y ./Z ./[ ./] ./^ ./_ ./` ./{ ./} ./~ ./ ./€
|
||||
par__quote_special_results mkfs.vfat . ./€ ./<2F> ./‚ ./ƒ ./„ ./… ./† ./‡ ./ˆ ./‰ ./Š ./‹ ./Œ ./<2F> ./Ž ./<2F> ./<2F> ./‘ ./’ ./“ ./” ./• ./– ./— ./˜ ./™ ./š ./› ./œ ./<2F> ./ž ./Ÿ ./ ./¡ ./¢ ./£ ./¤ ./¥ ./¦ ./§ ./¨ ./© ./ª ./« ./¬ ./ ./® ./¯ ./° ./± ./² ./³ ./´ ./µ ./¶ ./· ./¸ ./¹ ./º ./» ./¼ ./½ ./¾ ./¿ ./À ./Á ./ ./à ./Ä ./Å ./Æ ./Ç ./È ./É ./Ê ./Ë ./Ì ./Í ./Î ./Ï ./Ð ./Ñ ./Ò ./Ó ./Ô ./Õ ./Ö ./× ./Ø ./Ù ./Ú ./Û ./Ü ./Ý ./Þ ./ß ./÷ ./ÿ
|
||||
par__quote_special_results mkfs.vfat 301+0 records in
|
||||
par__quote_special_results mkfs.vfat 301+0 records out
|
||||
par__quote_special_results mkfs.msdos mkfs.fat 4.2 (2021-01-31)
|
||||
par__quote_special_results mkfs.msdos Filesystem 1K-blocks Used Available Use% Mounted on
|
||||
par__quote_special_results mkfs.msdos /dev/loop 999999 99999 99999 9% /tmp/par-test-loop
|
||||
par__quote_special_results mkfs.msdos . ./++ ./++++ ./++_ ./++__ ./++m ./++z ./+_ ./+__ ./+m ./+z ./,
|
||||
par__quote_special_results mkfs.msdos . ./! ./# ./$ ./% ./& ./' ./( ./) ./++ ./+01 ./+02 ./+03 ./+04 ./+05 ./+06 ./+07 ./+08 ./+09 ./+0a ./+0b ./+0c ./+0d ./+0e ./+0f ./+10 ./+11 ./+12 ./+13 ./+14 ./+15 ./+16 ./+17 ./+18 ./+19 ./+1a ./+1b ./+1c ./+1d ./+1e ./+1f ./+20 ./+_ ./+a ./+b ./+d ./+g ./+k ./+l ./+p ./+y ./+z ./, ./- ./0 ./1 ./2 ./3 ./4 ./5 ./6 ./7 ./8 ./9 ./; ./= ./@ ./A ./B ./C ./D ./E ./F ./G ./H ./I ./J ./K ./L ./M ./N ./O ./P ./Q ./R ./S ./T ./U ./V ./W ./X ./Y ./Z ./[ ./] ./^ ./_ ./` ./{ ./} ./~ ./ ./€
|
||||
par__quote_special_results mkfs.msdos . ./€ ./<2F> ./‚ ./ƒ ./„ ./… ./† ./‡ ./ˆ ./‰ ./Š ./‹ ./Œ ./<2F> ./Ž ./<2F> ./<2F> ./‘ ./’ ./“ ./” ./• ./– ./— ./˜ ./™ ./š ./› ./œ ./<2F> ./ž ./Ÿ ./ ./¡ ./¢ ./£ ./¤ ./¥ ./¦ ./§ ./¨ ./© ./ª ./« ./¬ ./ ./® ./¯ ./° ./± ./² ./³ ./´ ./µ ./¶ ./· ./¸ ./¹ ./º ./» ./¼ ./½ ./¾ ./¿ ./À ./Á ./ ./à ./Ä ./Å ./Æ ./Ç ./È ./É ./Ê ./Ë ./Ì ./Í ./Î ./Ï ./Ð ./Ñ ./Ò ./Ó ./Ô ./Õ ./Ö ./× ./Ø ./Ù ./Ú ./Û ./Ü ./Ý ./Þ ./ß ./÷ ./ÿ
|
||||
par__quote_special_results mkfs.msdos 301+0 records in
|
||||
par__quote_special_results mkfs.msdos 301+0 records out
|
||||
par__quote_special_results mkfs.f2fs
|
||||
par__quote_special_results mkfs.f2fs
|
||||
par__quote_special_results mkfs.f2fs Info: Disable heap-based policy
|
||||
par__quote_special_results mkfs.f2fs Info: Debug level = 0
|
||||
par__quote_special_results mkfs.f2fs Info: Trim is enabled
|
||||
par__quote_special_results mkfs.f2fs Info: Segments per section = 1
|
||||
par__quote_special_results mkfs.f2fs Info: Sections per zone = 1
|
||||
par__quote_special_results mkfs.f2fs Info: sector size = 512
|
||||
par__quote_special_results mkfs.f2fs Info: total sectors = 616448 (301 MB)
|
||||
par__quote_special_results mkfs.f2fs Info: zone aligned segment0 blkaddr: 512
|
||||
par__quote_special_results mkfs.f2fs Info: format version with
|
||||
par__quote_special_results mkfs.f2fs Info: [/dev/shm/par-test-loop Discarding device
|
||||
par__quote_special_results mkfs.f2fs Info: format successful
|
||||
par__quote_special_results mkfs.f2fs Filesystem 1K-blocks Used Available Use% Mounted on
|
||||
par__quote_special_results mkfs.f2fs /dev/loop 999999 99999 99999 9% /tmp/par-test-loop
|
||||
par__quote_special_results mkfs.f2fs . ./++ ./++++ ./++_ ./++__ ./++m ./++z ./+_ ./+__ ./+m ./+z ./,. ./,..
|
||||
par__quote_special_results mkfs.f2fs
|
||||
par__quote_special_results mkfs.f2fs . ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./
par__quote_special_results mkfs.f2fs ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./! ./" ./# ./$ ./% ./& ./' ./( ./) ./* ./++ ./+_ ./+z ./, ./- ./0 ./1 ./2 ./3 ./4 ./5 ./6 ./7 ./8 ./9 ./: ./; ./< ./= ./> ./? ./@ ./A ./B ./C ./D ./E ./F ./G ./H ./I ./J ./K ./L ./M ./N ./O ./P ./Q ./R ./S ./T ./U ./V ./W ./X ./Y ./Z ./[ ./\ ./] ./^ ./_ ./` ./a ./b ./c ./d ./e ./f ./g ./h ./i ./j ./k ./l ./m ./n ./o ./p ./q ./r ./s ./t ./u ./v ./w ./x ./y ./z ./{ ./| ./} ./~ ./ ./€
|
||||
par__quote_special_results mkfs.f2fs . ./€ ./<2F> ./‚ ./ƒ ./„ ./… ./† ./‡ ./ˆ ./‰ ./Š ./‹ ./Œ ./<2F> ./Ž ./<2F> ./<2F> ./‘ ./’ ./“ ./” ./• ./– ./— ./˜ ./™ ./š ./› ./œ ./<2F> ./ž ./Ÿ ./ ./¡ ./¢ ./£ ./¤ ./¥ ./¦ ./§ ./¨ ./© ./ª ./« ./¬ ./ ./® ./¯ ./° ./± ./² ./³ ./´ ./µ ./¶ ./· ./¸ ./¹ ./º ./» ./¼ ./½ ./¾ ./¿ ./À ./Á ./ ./à ./Ä ./Å ./Æ ./Ç ./È ./É ./Ê ./Ë ./Ì ./Í ./Î ./Ï ./Ð ./Ñ ./Ò ./Ó ./Ô ./Õ ./Ö ./× ./Ø ./Ù ./Ú ./Û ./Ü ./Ý ./Þ ./ß ./à ./á ./â ./ã ./ä ./å ./æ ./ç ./è ./é ./ê ./ë ./ì ./í ./î ./ï ./ð ./ñ ./ò ./ó ./ô ./õ ./ö ./÷ ./ø ./ù ./ú ./û ./ü ./ý ./þ ./ÿ
|
||||
par__quote_special_results mkfs.f2fs 301+0 records in
|
||||
par__quote_special_results mkfs.f2fs 301+0 records out
|
||||
par__round_robin_blocks bug #49664: --round-robin does not complete
|
||||
par__round_robin_blocks 8
|
||||
par__tee_too_many_args ### Fail if there are more arguments than --jobs
|
||||
par__tee_too_many_args 1 1
|
||||
par__tee_too_many_args 1 10
|
||||
par__tee_too_many_args 1 11
|
||||
par__tee_too_many_args 2 2
|
||||
par__tee_too_many_args 3 3
|
||||
par__tee_too_many_args 4 4
|
||||
par__tee_too_many_args parallel: Warning: Only enough file handles to run 999 jobs in parallel.
|
||||
par__tee_too_many_args parallel: Warning: Try running 'parallel -j999 -N 999 --pipe parallel -j999'
|
||||
par__tee_too_many_args parallel: Warning: or increasing 'ulimit -n' (try: ulimit -n `ulimit -Hn`)
|
||||
par__tee_too_many_args parallel: Warning: or increasing 'nofile' in /etc/security/limits.conf
|
||||
par__tee_too_many_args parallel: Warning: or increasing /proc/sys/fs/file-max
|
||||
par__tee_too_many_args parallel: Error: --tee requires --jobs to be higher. Try --jobs 999.
|
||||
par__xargs_compat xargs compatibility
|
||||
par__xargs_compat ### Test -L -l and --max-lines
|
||||
par__xargs_compat a_b
|
||||
par__xargs_compat c
|
||||
par__xargs_compat a_b c
|
||||
par__xargs_compat a_b c
|
||||
par__xargs_compat ### xargs -L1 echo
|
||||
par__xargs_compat a_b
|
||||
par__xargs_compat c
|
||||
par__xargs_compat a_b
|
||||
par__xargs_compat c
|
||||
par__xargs_compat a_b
|
||||
par__xargs_compat c
|
||||
par__xargs_compat Lines ending in space should continue on next line
|
||||
par__xargs_compat ### xargs -L1 echo
|
||||
par__xargs_compat a_b c
|
||||
par__xargs_compat d
|
||||
par__xargs_compat a_b c
|
||||
par__xargs_compat d
|
||||
par__xargs_compat a_b c
|
||||
par__xargs_compat d
|
||||
par__xargs_compat ### xargs -L2 echo
|
||||
par__xargs_compat a_b c d
|
||||
par__xargs_compat e
|
||||
par__xargs_compat a_b c d
|
||||
par__xargs_compat e
|
||||
par__xargs_compat a_b c d
|
||||
par__xargs_compat e
|
||||
par__xargs_compat ### xargs -l echo
|
||||
par__xargs_compat a_b c
|
||||
par__xargs_compat d
|
||||
par__xargs_compat e
|
||||
par__xargs_compat a_b c
|
||||
par__xargs_compat d
|
||||
par__xargs_compat e
|
||||
par__xargs_compat a_b c
|
||||
par__xargs_compat d
|
||||
par__xargs_compat e
|
||||
par__xargs_compat ### xargs -l2 echo
|
||||
par__xargs_compat a_b c d
|
||||
par__xargs_compat e
|
||||
par__xargs_compat a_b c d
|
||||
par__xargs_compat e
|
||||
par__xargs_compat a_b c d
|
||||
par__xargs_compat e
|
||||
par__xargs_compat ### xargs -l1 echo
|
||||
par__xargs_compat a_b c
|
||||
par__xargs_compat d
|
||||
par__xargs_compat e
|
||||
par__xargs_compat a_b c
|
||||
par__xargs_compat d
|
||||
par__xargs_compat e
|
||||
par__xargs_compat a_b c
|
||||
par__xargs_compat d
|
||||
par__xargs_compat e
|
||||
par__xargs_compat ### xargs --max-lines=2 echo
|
||||
par__xargs_compat a_b c d
|
||||
par__xargs_compat e
|
||||
par__xargs_compat a_b c d
|
||||
par__xargs_compat e
|
||||
par__xargs_compat a_b c d
|
||||
par__xargs_compat e
|
||||
par__xargs_compat ### xargs --max-lines echo
|
||||
par__xargs_compat a_b c
|
||||
par__xargs_compat d
|
||||
par__xargs_compat e
|
||||
par__xargs_compat a_b c
|
||||
par__xargs_compat d
|
||||
par__xargs_compat e
|
||||
par__xargs_compat a_b c
|
||||
par__xargs_compat d
|
||||
par__xargs_compat e
|
||||
par__xargs_compat ### test too long args
|
||||
par__xargs_compat parallel: Error: Command line too long (1000005 >= 63543) at input 0: zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz...
|
||||
par__xargs_compat xargs: argument line too long
|
||||
par__xargs_compat parallel: Error: Command line too long (1000007 >= 10) at input 0: zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz...
|
||||
par__xargs_compat 1 2
|
||||
par__xargs_compat 3 4
|
||||
par__xargs_compat 5 6
|
||||
par__xargs_compat 7 8
|
||||
par__xargs_compat 9 10
|
||||
par__xargs_compat xargs: argument line too long
|
||||
par__xargs_compat 1 2
|
||||
par__xargs_compat 3 4
|
||||
par__xargs_compat 5 6
|
||||
par__xargs_compat 7 8
|
||||
par__xargs_compat 9 10
|
||||
par__xargs_compat parallel: Error: Command line too long (1000007 >= 10) at input 0: zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz...
|
||||
par__xargs_compat 1 2
|
||||
par__xargs_compat 3 4
|
||||
par__xargs_compat 5 6
|
||||
par__xargs_compat 7 8
|
||||
par__xargs_compat 9 10
|
||||
par__xargs_compat ### Test -x
|
||||
par__xargs_compat -km
|
||||
par__xargs_compat parallel: Error: Command line too long (10 >= 10) at input 0: 12345
|
||||
par__xargs_compat 1 2
|
||||
par__xargs_compat 3 4
|
||||
par__xargs_compat 5 6
|
||||
par__xargs_compat 7 8
|
||||
par__xargs_compat 9 10
|
||||
par__xargs_compat -kX
|
||||
par__xargs_compat parallel: Error: Command line too long (10 >= 10) at input 0: 12345
|
||||
par__xargs_compat 1 2
|
||||
par__xargs_compat 3 4
|
||||
par__xargs_compat 5 6
|
||||
par__xargs_compat 7 8
|
||||
par__xargs_compat 9 10
|
||||
par__xargs_compat -x
|
||||
par__xargs_compat xargs: argument line too long
|
||||
par__xargs_compat 1 2
|
||||
par__xargs_compat 3 4
|
||||
par__xargs_compat 5 6
|
||||
par__xargs_compat 7 8
|
||||
par__xargs_compat -km -x
|
||||
par__xargs_compat 1 2
|
||||
par__xargs_compat 12
|
||||
par__xargs_compat 1234
|
||||
par__xargs_compat 13
|
||||
par__xargs_compat 14
|
||||
par__xargs_compat 15
|
||||
par__xargs_compat 3 4
|
||||
par__xargs_compat 5 6
|
||||
par__xargs_compat 7 8
|
||||
par__xargs_compat 9 10
|
||||
par__xargs_compat -kX -x
|
||||
par__xargs_compat 1 2
|
||||
par__xargs_compat 12
|
||||
par__xargs_compat 1234
|
||||
par__xargs_compat 13
|
||||
par__xargs_compat 14
|
||||
par__xargs_compat 15
|
||||
par__xargs_compat 3 4
|
||||
par__xargs_compat 5 6
|
||||
par__xargs_compat 7 8
|
||||
par__xargs_compat 9 10
|
||||
par__xargs_compat -x
|
||||
par__xargs_compat 1 2
|
||||
par__xargs_compat 12
|
||||
par__xargs_compat 1234
|
||||
par__xargs_compat 13
|
||||
par__xargs_compat 14
|
||||
par__xargs_compat 15
|
||||
par__xargs_compat 3 4
|
||||
par__xargs_compat 5 6
|
||||
par__xargs_compat 7 8
|
||||
par__xargs_compat 9 10
|
||||
par_colsep ### Test of --colsep
|
||||
par_colsep a b c
|
||||
par_colsep a b c
|
||||
|
@ -92,7 +570,7 @@ par_compress_prg_fails --tag --files parallel: Error: false failed.
|
|||
par_compress_prg_fails --line-buffer 1
|
||||
par_compress_prg_fails --line-buffer parallel: Error: false failed.
|
||||
par_compress_prg_fails --line-buffer parallel: Error: false failed.
|
||||
par_compress_prg_fails --line-buffer --files 9
|
||||
par_compress_prg_fails --line-buffer --files 1
|
||||
par_compress_prg_fails --line-buffer --files parallel: Warning: Use --files0 when $TMPDIR contains newline.
|
||||
par_compress_prg_fails --line-buffer --files parallel: Error: false failed.
|
||||
par_compress_prg_fails --line-buffer --files parallel: Error: false failed.
|
||||
|
@ -615,10 +1093,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 183794839f45c8f7e38fe7c677c49958 -
|
||||
par_maxlinelen_m_I Chars per line (697810/11): 63437
|
||||
par_nice Check that --nice works
|
||||
par_nice load_10
|
||||
par_nice bzip2 18
|
||||
par_nice bzip2 18
|
||||
par_opt_arg_eaten bug #31716: Options with optional arguments may eat next argument
|
||||
par_opt_arg_eaten ### Test https://savannah.gnu.org/bugs/index.php?31716
|
||||
par_opt_arg_eaten 1 OK
|
||||
|
@ -708,213 +1182,6 @@ par_pipe_tee 314572800
|
|||
par_pipepart_tee bug #45479: --pipe/--pipepart --tee
|
||||
par_pipepart_tee --pipepart --tee
|
||||
par_pipepart_tee 314572800
|
||||
par_quote_special_results ### Test --results on file systems with limited UTF8 support
|
||||
par_quote_special_results mkfs.btrfs
|
||||
par_quote_special_results mkfs.btrfs NOTE: several default settings have changed in version 5.15, please make sure
|
||||
par_quote_special_results mkfs.btrfs this does not affect your deployments:
|
||||
par_quote_special_results mkfs.btrfs - DUP for metadata (-m dup)
|
||||
par_quote_special_results mkfs.btrfs - enabled no-holes (-O no-holes)
|
||||
par_quote_special_results mkfs.btrfs - enabled free-space-tree (-R free-space-tree)
|
||||
par_quote_special_results mkfs.btrfs
|
||||
par_quote_special_results mkfs.btrfs Label: (null)
|
||||
par_quote_special_results mkfs.btrfs Node size: 16384
|
||||
par_quote_special_results mkfs.btrfs Sector size: 4096
|
||||
par_quote_special_results mkfs.btrfs Filesystem size: 301.00MiB
|
||||
par_quote_special_results mkfs.btrfs Block group profiles:
|
||||
par_quote_special_results mkfs.btrfs Data: single 8.00MiB
|
||||
par_quote_special_results mkfs.btrfs Metadata: DUP 32.00MiB
|
||||
par_quote_special_results mkfs.btrfs System: DUP 8.00MiB
|
||||
par_quote_special_results mkfs.btrfs SSD detected: no
|
||||
par_quote_special_results mkfs.btrfs Zoned device: no
|
||||
par_quote_special_results mkfs.btrfs Runtime features: free-space-tree
|
||||
par_quote_special_results mkfs.btrfs Checksum: crc32c
|
||||
par_quote_special_results mkfs.btrfs Number of devices: 1
|
||||
par_quote_special_results mkfs.btrfs Devices:
|
||||
par_quote_special_results mkfs.btrfs 1 301.00MiB /dev/shm/par-test-loop
|
||||
par_quote_special_results mkfs.btrfs
|
||||
par_quote_special_results mkfs.btrfs Filesystem 1K-blocks Used Available Use% Mounted on
|
||||
par_quote_special_results mkfs.btrfs /dev/loop 999999 99999 99999 9% /tmp/par-test-loop
|
||||
par_quote_special_results mkfs.btrfs . ./++ ./++++ ./++_ ./++__ ./++m ./++z ./+_ ./+__ ./+m ./+z ./,. ./,..
|
||||
par_quote_special_results mkfs.btrfs
|
||||
par_quote_special_results mkfs.btrfs . ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./
par_quote_special_results mkfs.btrfs ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./! ./" ./# ./$ ./% ./& ./' ./( ./) ./* ./++ ./+_ ./+z ./, ./- ./0 ./1 ./2 ./3 ./4 ./5 ./6 ./7 ./8 ./9 ./: ./; ./< ./= ./> ./? ./@ ./A ./B ./C ./D ./E ./F ./G ./H ./I ./J ./K ./L ./M ./N ./O ./P ./Q ./R ./S ./T ./U ./V ./W ./X ./Y ./Z ./[ ./\ ./] ./^ ./_ ./` ./a ./b ./c ./d ./e ./f ./g ./h ./i ./j ./k ./l ./m ./n ./o ./p ./q ./r ./s ./t ./u ./v ./w ./x ./y ./z ./{ ./| ./} ./~ ./ ./€
|
||||
par_quote_special_results mkfs.btrfs . ./€ ./<2F> ./‚ ./ƒ ./„ ./… ./† ./‡ ./ˆ ./‰ ./Š ./‹ ./Œ ./<2F> ./Ž ./<2F> ./<2F> ./‘ ./’ ./“ ./” ./• ./– ./— ./˜ ./™ ./š ./› ./œ ./<2F> ./ž ./Ÿ ./ ./¡ ./¢ ./£ ./¤ ./¥ ./¦ ./§ ./¨ ./© ./ª ./« ./¬ ./ ./® ./¯ ./° ./± ./² ./³ ./´ ./µ ./¶ ./· ./¸ ./¹ ./º ./» ./¼ ./½ ./¾ ./¿ ./À ./Á ./ ./à ./Ä ./Å ./Æ ./Ç ./È ./É ./Ê ./Ë ./Ì ./Í ./Î ./Ï ./Ð ./Ñ ./Ò ./Ó ./Ô ./Õ ./Ö ./× ./Ø ./Ù ./Ú ./Û ./Ü ./Ý ./Þ ./ß ./à ./á ./â ./ã ./ä ./å ./æ ./ç ./è ./é ./ê ./ë ./ì ./í ./î ./ï ./ð ./ñ ./ò ./ó ./ô ./õ ./ö ./÷ ./ø ./ù ./ú ./û ./ü ./ý ./þ ./ÿ
|
||||
par_quote_special_results mkfs.btrfs 301+0 records in
|
||||
par_quote_special_results mkfs.btrfs 301+0 records out
|
||||
par_quote_special_results mkfs.exfat Creating exFAT filesystem(/dev/shm/par-test-loop cluster size=32768)
|
||||
par_quote_special_results mkfs.exfat
|
||||
par_quote_special_results mkfs.exfat Writing volume boot record: done
|
||||
par_quote_special_results mkfs.exfat Writing backup volume boot record: done
|
||||
par_quote_special_results mkfs.exfat Fat table creation: done
|
||||
par_quote_special_results mkfs.exfat Allocation bitmap creation: done
|
||||
par_quote_special_results mkfs.exfat Upcase table creation: done
|
||||
par_quote_special_results mkfs.exfat Writing root directory entry: done
|
||||
par_quote_special_results mkfs.exfat Synchronizing...
|
||||
par_quote_special_results mkfs.exfat
|
||||
par_quote_special_results mkfs.exfat exFAT format complete!
|
||||
par_quote_special_results mkfs.exfat Filesystem 1K-blocks Used Available Use% Mounted on
|
||||
par_quote_special_results mkfs.exfat /dev/loop 999999 99999 99999 9% /tmp/par-test-loop
|
||||
par_quote_special_results mkfs.exfat . ./++ ./++++ ./++_ ./++__ ./++m ./++z ./+_ ./+__ ./+m ./+z ./,
|
||||
par_quote_special_results mkfs.exfat . ./ ./! ./# ./$ ./% ./& ./' ./( ./) ./++ ./+01 ./+02 ./+03 ./+04 ./+05 ./+06 ./+07 ./+08 ./+09 ./+0a ./+0b ./+0c ./+0d ./+0e ./+0f ./+10 ./+11 ./+12 ./+13 ./+14 ./+15 ./+16 ./+17 ./+18 ./+19 ./+1a ./+1b ./+1c ./+1d ./+1e ./+1f ./+80 ./+_ ./+a ./+b ./+d ./+g ./+k ./+l ./+p ./+y ./+z ./, ./- ./0 ./1 ./2 ./3 ./4 ./5 ./6 ./7 ./8 ./9 ./; ./= ./@ ./A ./B ./C ./D ./E ./F ./G ./H ./I ./J ./K ./L ./M ./N ./O ./P ./Q ./R ./S ./T ./U ./V ./W ./X ./Y ./Z ./[ ./] ./^ ./_ ./` ./{ ./} ./~ ./
|
||||
par_quote_special_results mkfs.exfat . ./+80 ./+81 ./+82 ./+83 ./+84 ./+85 ./+86 ./+87 ./+88 ./+89 ./+8a ./+8b ./+8c ./+8d ./+8e ./+8f ./+90 ./+91 ./+92 ./+93 ./+94 ./+95 ./+96 ./+97 ./+98 ./+99 ./+9a ./+9b ./+9c ./+9d ./+9e ./+9f ./+a0 ./+a1 ./+a2 ./+a3 ./+a4 ./+a5 ./+a6 ./+a7 ./+a8 ./+a9 ./+aa ./+ab ./+ac ./+ad ./+ae ./+af ./+b0 ./+b1 ./+b2 ./+b3 ./+b4 ./+b5 ./+b6 ./+b7 ./+b8 ./+b9 ./+ba ./+bb ./+bc ./+bd ./+be ./+bf ./+c0 ./+c1 ./+c2 ./+c3 ./+c4 ./+c5 ./+c6 ./+c7 ./+c8 ./+c9 ./+ca ./+cb ./+cc ./+cd ./+ce ./+cf ./+d0 ./+d1 ./+d2 ./+d3 ./+d4 ./+d5 ./+d6 ./+d7 ./+d8 ./+d9 ./+da ./+db ./+dc ./+dd ./+de ./+df ./+e0 ./+e1 ./+e2 ./+e3 ./+e4 ./+e5 ./+e6 ./+e7 ./+e8 ./+e9 ./+ea ./+eb ./+ec ./+ed ./+ee ./+ef ./+f0 ./+f1 ./+f2 ./+f3 ./+f4 ./+f5 ./+f6 ./+f7 ./+f8 ./+f9 ./+fa ./+fb ./+fc ./+fd ./+fe ./+ff
|
||||
par_quote_special_results mkfs.exfat 301+0 records in
|
||||
par_quote_special_results mkfs.exfat 301+0 records out
|
||||
par_quote_special_results mkfs.ext2 Discarding device blocks: 0/77056 done
|
||||
par_quote_special_results mkfs.ext2 Creating filesystem with 77056 4k blocks and 77088 inodes
|
||||
par_quote_special_results mkfs.ext2 Superblock backups stored on blocks:
|
||||
par_quote_special_results mkfs.ext2 32768
|
||||
par_quote_special_results mkfs.ext2
|
||||
par_quote_special_results mkfs.ext2 Allocating group tables: 0/3 done
|
||||
par_quote_special_results mkfs.ext2 Writing inode tables: 0/3 done
|
||||
par_quote_special_results mkfs.ext2 Writing superblocks and filesystem accounting information: 0/3 done
|
||||
par_quote_special_results mkfs.ext2
|
||||
par_quote_special_results mkfs.ext2 Filesystem 1K-blocks Used Available Use% Mounted on
|
||||
par_quote_special_results mkfs.ext2 /dev/loop 999999 99999 99999 9% /tmp/par-test-loop
|
||||
par_quote_special_results mkfs.ext2 . ./++ ./++++ ./++_ ./++__ ./++m ./++z ./+_ ./+__ ./+m ./+z ./,. ./,..
|
||||
par_quote_special_results mkfs.ext2
|
||||
par_quote_special_results mkfs.ext2 . ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./
par_quote_special_results mkfs.ext2 ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./! ./" ./# ./$ ./% ./& ./' ./( ./) ./* ./++ ./+_ ./+z ./, ./- ./0 ./1 ./2 ./3 ./4 ./5 ./6 ./7 ./8 ./9 ./: ./; ./< ./= ./> ./? ./@ ./A ./B ./C ./D ./E ./F ./G ./H ./I ./J ./K ./L ./M ./N ./O ./P ./Q ./R ./S ./T ./U ./V ./W ./X ./Y ./Z ./[ ./\ ./] ./^ ./_ ./` ./a ./b ./c ./d ./e ./f ./g ./h ./i ./j ./k ./l ./m ./n ./o ./p ./q ./r ./s ./t ./u ./v ./w ./x ./y ./z ./{ ./| ./} ./~ ./ ./€
|
||||
par_quote_special_results mkfs.ext2 . ./€ ./<2F> ./‚ ./ƒ ./„ ./… ./† ./‡ ./ˆ ./‰ ./Š ./‹ ./Œ ./<2F> ./Ž ./<2F> ./<2F> ./‘ ./’ ./“ ./” ./• ./– ./— ./˜ ./™ ./š ./› ./œ ./<2F> ./ž ./Ÿ ./ ./¡ ./¢ ./£ ./¤ ./¥ ./¦ ./§ ./¨ ./© ./ª ./« ./¬ ./ ./® ./¯ ./° ./± ./² ./³ ./´ ./µ ./¶ ./· ./¸ ./¹ ./º ./» ./¼ ./½ ./¾ ./¿ ./À ./Á ./ ./à ./Ä ./Å ./Æ ./Ç ./È ./É ./Ê ./Ë ./Ì ./Í ./Î ./Ï ./Ð ./Ñ ./Ò ./Ó ./Ô ./Õ ./Ö ./× ./Ø ./Ù ./Ú ./Û ./Ü ./Ý ./Þ ./ß ./à ./á ./â ./ã ./ä ./å ./æ ./ç ./è ./é ./ê ./ë ./ì ./í ./î ./ï ./ð ./ñ ./ò ./ó ./ô ./õ ./ö ./÷ ./ø ./ù ./ú ./û ./ü ./ý ./þ ./ÿ
|
||||
par_quote_special_results mkfs.ext2 301+0 records in
|
||||
par_quote_special_results mkfs.ext2 301+0 records out
|
||||
par_quote_special_results mkfs.ext3 Discarding device blocks: 0/77056 done
|
||||
par_quote_special_results mkfs.ext3 Creating filesystem with 77056 4k blocks and 77088 inodes
|
||||
par_quote_special_results mkfs.ext3 Superblock backups stored on blocks:
|
||||
par_quote_special_results mkfs.ext3 32768
|
||||
par_quote_special_results mkfs.ext3
|
||||
par_quote_special_results mkfs.ext3 Allocating group tables: 0/3 done
|
||||
par_quote_special_results mkfs.ext3 Writing inode tables: 0/3 done
|
||||
par_quote_special_results mkfs.ext3 Creating journal (4096 blocks): done
|
||||
par_quote_special_results mkfs.ext3 Writing superblocks and filesystem accounting information: 0/3 done
|
||||
par_quote_special_results mkfs.ext3
|
||||
par_quote_special_results mkfs.ext3 Filesystem 1K-blocks Used Available Use% Mounted on
|
||||
par_quote_special_results mkfs.ext3 /dev/loop 999999 99999 99999 9% /tmp/par-test-loop
|
||||
par_quote_special_results mkfs.ext3 . ./++ ./++++ ./++_ ./++__ ./++m ./++z ./+_ ./+__ ./+m ./+z ./,. ./,..
|
||||
par_quote_special_results mkfs.ext3
|
||||
par_quote_special_results mkfs.ext3 . ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./
par_quote_special_results mkfs.ext3 ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./! ./" ./# ./$ ./% ./& ./' ./( ./) ./* ./++ ./+_ ./+z ./, ./- ./0 ./1 ./2 ./3 ./4 ./5 ./6 ./7 ./8 ./9 ./: ./; ./< ./= ./> ./? ./@ ./A ./B ./C ./D ./E ./F ./G ./H ./I ./J ./K ./L ./M ./N ./O ./P ./Q ./R ./S ./T ./U ./V ./W ./X ./Y ./Z ./[ ./\ ./] ./^ ./_ ./` ./a ./b ./c ./d ./e ./f ./g ./h ./i ./j ./k ./l ./m ./n ./o ./p ./q ./r ./s ./t ./u ./v ./w ./x ./y ./z ./{ ./| ./} ./~ ./ ./€
|
||||
par_quote_special_results mkfs.ext3 . ./€ ./<2F> ./‚ ./ƒ ./„ ./… ./† ./‡ ./ˆ ./‰ ./Š ./‹ ./Œ ./<2F> ./Ž ./<2F> ./<2F> ./‘ ./’ ./“ ./” ./• ./– ./— ./˜ ./™ ./š ./› ./œ ./<2F> ./ž ./Ÿ ./ ./¡ ./¢ ./£ ./¤ ./¥ ./¦ ./§ ./¨ ./© ./ª ./« ./¬ ./ ./® ./¯ ./° ./± ./² ./³ ./´ ./µ ./¶ ./· ./¸ ./¹ ./º ./» ./¼ ./½ ./¾ ./¿ ./À ./Á ./ ./à ./Ä ./Å ./Æ ./Ç ./È ./É ./Ê ./Ë ./Ì ./Í ./Î ./Ï ./Ð ./Ñ ./Ò ./Ó ./Ô ./Õ ./Ö ./× ./Ø ./Ù ./Ú ./Û ./Ü ./Ý ./Þ ./ß ./à ./á ./â ./ã ./ä ./å ./æ ./ç ./è ./é ./ê ./ë ./ì ./í ./î ./ï ./ð ./ñ ./ò ./ó ./ô ./õ ./ö ./÷ ./ø ./ù ./ú ./û ./ü ./ý ./þ ./ÿ
|
||||
par_quote_special_results mkfs.ext3 301+0 records in
|
||||
par_quote_special_results mkfs.ext3 301+0 records out
|
||||
par_quote_special_results mkfs.ext4 Discarding device blocks: 0/77056 done
|
||||
par_quote_special_results mkfs.ext4 Creating filesystem with 77056 4k blocks and 77088 inodes
|
||||
par_quote_special_results mkfs.ext4 Superblock backups stored on blocks:
|
||||
par_quote_special_results mkfs.ext4 32768
|
||||
par_quote_special_results mkfs.ext4
|
||||
par_quote_special_results mkfs.ext4 Allocating group tables: 0/3 done
|
||||
par_quote_special_results mkfs.ext4 Writing inode tables: 0/3 done
|
||||
par_quote_special_results mkfs.ext4 Creating journal (4096 blocks): done
|
||||
par_quote_special_results mkfs.ext4 Writing superblocks and filesystem accounting information: 0/3 done
|
||||
par_quote_special_results mkfs.ext4
|
||||
par_quote_special_results mkfs.ext4 Filesystem 1K-blocks Used Available Use% Mounted on
|
||||
par_quote_special_results mkfs.ext4 /dev/loop 999999 99999 99999 9% /tmp/par-test-loop
|
||||
par_quote_special_results mkfs.ext4 . ./++ ./++++ ./++_ ./++__ ./++m ./++z ./+_ ./+__ ./+m ./+z ./,. ./,..
|
||||
par_quote_special_results mkfs.ext4
|
||||
par_quote_special_results mkfs.ext4 . ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./
par_quote_special_results mkfs.ext4 ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./! ./" ./# ./$ ./% ./& ./' ./( ./) ./* ./++ ./+_ ./+z ./, ./- ./0 ./1 ./2 ./3 ./4 ./5 ./6 ./7 ./8 ./9 ./: ./; ./< ./= ./> ./? ./@ ./A ./B ./C ./D ./E ./F ./G ./H ./I ./J ./K ./L ./M ./N ./O ./P ./Q ./R ./S ./T ./U ./V ./W ./X ./Y ./Z ./[ ./\ ./] ./^ ./_ ./` ./a ./b ./c ./d ./e ./f ./g ./h ./i ./j ./k ./l ./m ./n ./o ./p ./q ./r ./s ./t ./u ./v ./w ./x ./y ./z ./{ ./| ./} ./~ ./ ./€
|
||||
par_quote_special_results mkfs.ext4 . ./€ ./<2F> ./‚ ./ƒ ./„ ./… ./† ./‡ ./ˆ ./‰ ./Š ./‹ ./Œ ./<2F> ./Ž ./<2F> ./<2F> ./‘ ./’ ./“ ./” ./• ./– ./— ./˜ ./™ ./š ./› ./œ ./<2F> ./ž ./Ÿ ./ ./¡ ./¢ ./£ ./¤ ./¥ ./¦ ./§ ./¨ ./© ./ª ./« ./¬ ./ ./® ./¯ ./° ./± ./² ./³ ./´ ./µ ./¶ ./· ./¸ ./¹ ./º ./» ./¼ ./½ ./¾ ./¿ ./À ./Á ./ ./à ./Ä ./Å ./Æ ./Ç ./È ./É ./Ê ./Ë ./Ì ./Í ./Î ./Ï ./Ð ./Ñ ./Ò ./Ó ./Ô ./Õ ./Ö ./× ./Ø ./Ù ./Ú ./Û ./Ü ./Ý ./Þ ./ß ./à ./á ./â ./ã ./ä ./å ./æ ./ç ./è ./é ./ê ./ë ./ì ./í ./î ./ï ./ð ./ñ ./ò ./ó ./ô ./õ ./ö ./÷ ./ø ./ù ./ú ./û ./ü ./ý ./þ ./ÿ
|
||||
par_quote_special_results mkfs.ext4 301+0 records in
|
||||
par_quote_special_results mkfs.ext4 301+0 records out
|
||||
par_quote_special_results mkfs.reiserfs -fq Filesystem 1K-blocks Used Available Use% Mounted on
|
||||
par_quote_special_results mkfs.reiserfs -fq /dev/loop 999999 99999 99999 9% /tmp/par-test-loop
|
||||
par_quote_special_results mkfs.reiserfs -fq . ./++ ./++++ ./++_ ./++__ ./++m ./++z ./+_ ./+__ ./+m ./+z ./,. ./,..
|
||||
par_quote_special_results mkfs.reiserfs -fq
|
||||
par_quote_special_results mkfs.reiserfs -fq . ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./
par_quote_special_results mkfs.reiserfs -fq ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./! ./" ./# ./$ ./% ./& ./' ./( ./) ./* ./++ ./+_ ./+z ./, ./- ./0 ./1 ./2 ./3 ./4 ./5 ./6 ./7 ./8 ./9 ./: ./; ./< ./= ./> ./? ./@ ./A ./B ./C ./D ./E ./F ./G ./H ./I ./J ./K ./L ./M ./N ./O ./P ./Q ./R ./S ./T ./U ./V ./W ./X ./Y ./Z ./[ ./\ ./] ./^ ./_ ./` ./a ./b ./c ./d ./e ./f ./g ./h ./i ./j ./k ./l ./m ./n ./o ./p ./q ./r ./s ./t ./u ./v ./w ./x ./y ./z ./{ ./| ./} ./~ ./ ./€
|
||||
par_quote_special_results mkfs.reiserfs -fq . ./€ ./<2F> ./‚ ./ƒ ./„ ./… ./† ./‡ ./ˆ ./‰ ./Š ./‹ ./Œ ./<2F> ./Ž ./<2F> ./<2F> ./‘ ./’ ./“ ./” ./• ./– ./— ./˜ ./™ ./š ./› ./œ ./<2F> ./ž ./Ÿ ./ ./¡ ./¢ ./£ ./¤ ./¥ ./¦ ./§ ./¨ ./© ./ª ./« ./¬ ./ ./® ./¯ ./° ./± ./² ./³ ./´ ./µ ./¶ ./· ./¸ ./¹ ./º ./» ./¼ ./½ ./¾ ./¿ ./À ./Á ./ ./à ./Ä ./Å ./Æ ./Ç ./È ./É ./Ê ./Ë ./Ì ./Í ./Î ./Ï ./Ð ./Ñ ./Ò ./Ó ./Ô ./Õ ./Ö ./× ./Ø ./Ù ./Ú ./Û ./Ü ./Ý ./Þ ./ß ./à ./á ./â ./ã ./ä ./å ./æ ./ç ./è ./é ./ê ./ë ./ì ./í ./î ./ï ./ð ./ñ ./ò ./ó ./ô ./õ ./ö ./÷ ./ø ./ù ./ú ./û ./ü ./ý ./þ ./ÿ
|
||||
par_quote_special_results mkfs.reiserfs -fq 301+0 records in
|
||||
par_quote_special_results mkfs.reiserfs -fq 301+0 records out
|
||||
par_quote_special_results mkfs.reiserfs -fq mkfs.reiserfs 3.6.27
|
||||
par_quote_special_results mkfs.reiserfs -fq
|
||||
par_quote_special_results mkfs.ntfs -F Cluster size has been automatically set to 4096 bytes.
|
||||
par_quote_special_results mkfs.ntfs -F Initializing device with zeroes: 0% 0% 1% 2% 3% 4% 5% 6% 7% 8% 9% 10% 11% 12% 13% 14% 15% 16% 17% 18% 19% 20% 21% 22% 23% 24% 25% 26% 27% 28% 29% 30% 31% 32% 33% 34% 35% 36% 37% 38% 39% 40% 41% 42% 43% 44% 45% 46% 47% 48% 49% 50% 51% 52% 53% 54% 55% 56% 57% 58% 59% 60% 61% 62% 63% 64% 65% 66% 67% 68% 69% 70% 71% 72% 73% 74% 75% 76% 77% 78% 79% 80% 81% 82% 83% 84% 85% 86% 87% 88% 89% 90% 91% 92% 93% 94% 95% 96% 97% 98% 99%100% - Done.
|
||||
par_quote_special_results mkfs.ntfs -F Creating NTFS volume structures.
|
||||
par_quote_special_results mkfs.ntfs -F mkntfs completed successfully. Have a nice day.
|
||||
par_quote_special_results mkfs.ntfs -F Filesystem 1K-blocks Used Available Use% Mounted on
|
||||
par_quote_special_results mkfs.ntfs -F /dev/loop 999999 99999 99999 9% /tmp/par-test-loop
|
||||
par_quote_special_results mkfs.ntfs -F . ./++ ./++++ ./++_ ./++__ ./++m ./++z ./+_ ./+__ ./+m ./+z ./,. ./,..
|
||||
par_quote_special_results mkfs.ntfs -F
|
||||
par_quote_special_results mkfs.ntfs -F . ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./
par_quote_special_results mkfs.ntfs -F ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./! ./" ./# ./$ ./% ./& ./' ./( ./) ./* ./++ ./+80 ./+_ ./+z ./, ./- ./0 ./1 ./2 ./3 ./4 ./5 ./6 ./7 ./8 ./9 ./: ./; ./< ./= ./> ./? ./@ ./A ./B ./C ./D ./E ./F ./G ./H ./I ./J ./K ./L ./M ./N ./O ./P ./Q ./R ./S ./T ./U ./V ./W ./X ./Y ./Z ./[ ./\ ./] ./^ ./_ ./` ./a ./b ./c ./d ./e ./f ./g ./h ./i ./j ./k ./l ./m ./n ./o ./p ./q ./r ./s ./t ./u ./v ./w ./x ./y ./z ./{ ./| ./} ./~ ./
|
||||
par_quote_special_results mkfs.ntfs -F . ./+80 ./+81 ./+82 ./+83 ./+84 ./+85 ./+86 ./+87 ./+88 ./+89 ./+8a ./+8b ./+8c ./+8d ./+8e ./+8f ./+90 ./+91 ./+92 ./+93 ./+94 ./+95 ./+96 ./+97 ./+98 ./+99 ./+9a ./+9b ./+9c ./+9d ./+9e ./+9f ./+a0 ./+a1 ./+a2 ./+a3 ./+a4 ./+a5 ./+a6 ./+a7 ./+a8 ./+a9 ./+aa ./+ab ./+ac ./+ad ./+ae ./+af ./+b0 ./+b1 ./+b2 ./+b3 ./+b4 ./+b5 ./+b6 ./+b7 ./+b8 ./+b9 ./+ba ./+bb ./+bc ./+bd ./+be ./+bf ./+c0 ./+c1 ./+c2 ./+c3 ./+c4 ./+c5 ./+c6 ./+c7 ./+c8 ./+c9 ./+ca ./+cb ./+cc ./+cd ./+ce ./+cf ./+d0 ./+d1 ./+d2 ./+d3 ./+d4 ./+d5 ./+d6 ./+d7 ./+d8 ./+d9 ./+da ./+db ./+dc ./+dd ./+de ./+df ./+e0 ./+e1 ./+e2 ./+e3 ./+e4 ./+e5 ./+e6 ./+e7 ./+e8 ./+e9 ./+ea ./+eb ./+ec ./+ed ./+ee ./+ef ./+f0 ./+f1 ./+f2 ./+f3 ./+f4 ./+f5 ./+f6 ./+f7 ./+f8 ./+f9 ./+fa ./+fb ./+fc ./+fd ./+fe ./+ff
|
||||
par_quote_special_results mkfs.ntfs -F 301+0 records in
|
||||
par_quote_special_results mkfs.ntfs -F 301+0 records out
|
||||
par_quote_special_results mkfs.ntfs -F /dev/shm/par-test-loop is not a block device.
|
||||
par_quote_special_results mkfs.ntfs -F mkntfs forced anyway.
|
||||
par_quote_special_results mkfs.ntfs -F The sector size was not specified for /dev/shm/par-test-loop and it could not be obtained automatically. It has been set to 512 bytes.
|
||||
par_quote_special_results mkfs.ntfs -F The partition start sector was not specified for /dev/shm/par-test-loop and it could not be obtained automatically. It has been set to 0.
|
||||
par_quote_special_results mkfs.ntfs -F The number of sectors per track was not specified for /dev/shm/par-test-loop and it could not be obtained automatically. It has been set to 0.
|
||||
par_quote_special_results mkfs.ntfs -F The number of heads was not specified for /dev/shm/par-test-loop and it could not be obtained automatically. It has been set to 0.
|
||||
par_quote_special_results mkfs.ntfs -F To boot from a device, Windows needs the 'partition start sector', the 'sectors per track' and the 'number of heads' to be set.
|
||||
par_quote_special_results mkfs.ntfs -F Windows will not be able to boot from this device.
|
||||
par_quote_special_results mkfs.xfs -f meta-data=/dev/shm/par-test-loop isize=512 agcount=4, agsize=19264 blks
|
||||
par_quote_special_results mkfs.xfs -f = sectsz=512 attr=2, projid32bit=1
|
||||
par_quote_special_results mkfs.xfs -f data = bsize=4096 blocks=77056, imaxpct=25
|
||||
par_quote_special_results mkfs.xfs -f = sunit=0 swidth=0 blks
|
||||
par_quote_special_results mkfs.xfs -f naming =version 2 bsize=4096 ascii-ci=0, ftype=1
|
||||
par_quote_special_results mkfs.xfs -f = sectsz=512 sunit=0 blks, lazy-count=1
|
||||
par_quote_special_results mkfs.xfs -f realtime =none extsz=4096 blocks=0, rtextents=0
|
||||
par_quote_special_results mkfs.xfs -f Filesystem 1K-blocks Used Available Use% Mounted on
|
||||
par_quote_special_results mkfs.xfs -f /dev/loop 999999 99999 99999 9% /tmp/par-test-loop
|
||||
par_quote_special_results mkfs.xfs -f . ./++ ./++++ ./++_ ./++__ ./++m ./++z ./+_ ./+__ ./+m ./+z ./,. ./,..
|
||||
par_quote_special_results mkfs.xfs -f
|
||||
par_quote_special_results mkfs.xfs -f . ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./
par_quote_special_results mkfs.xfs -f ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./! ./" ./# ./$ ./% ./& ./' ./( ./) ./* ./++ ./+_ ./+z ./, ./- ./0 ./1 ./2 ./3 ./4 ./5 ./6 ./7 ./8 ./9 ./: ./; ./< ./= ./> ./? ./@ ./A ./B ./C ./D ./E ./F ./G ./H ./I ./J ./K ./L ./M ./N ./O ./P ./Q ./R ./S ./T ./U ./V ./W ./X ./Y ./Z ./[ ./\ ./] ./^ ./_ ./` ./a ./b ./c ./d ./e ./f ./g ./h ./i ./j ./k ./l ./m ./n ./o ./p ./q ./r ./s ./t ./u ./v ./w ./x ./y ./z ./{ ./| ./} ./~ ./ ./€
|
||||
par_quote_special_results mkfs.xfs -f . ./€ ./<2F> ./‚ ./ƒ ./„ ./… ./† ./‡ ./ˆ ./‰ ./Š ./‹ ./Œ ./<2F> ./Ž ./<2F> ./<2F> ./‘ ./’ ./“ ./” ./• ./– ./— ./˜ ./™ ./š ./› ./œ ./<2F> ./ž ./Ÿ ./ ./¡ ./¢ ./£ ./¤ ./¥ ./¦ ./§ ./¨ ./© ./ª ./« ./¬ ./ ./® ./¯ ./° ./± ./² ./³ ./´ ./µ ./¶ ./· ./¸ ./¹ ./º ./» ./¼ ./½ ./¾ ./¿ ./À ./Á ./ ./à ./Ä ./Å ./Æ ./Ç ./È ./É ./Ê ./Ë ./Ì ./Í ./Î ./Ï ./Ð ./Ñ ./Ò ./Ó ./Ô ./Õ ./Ö ./× ./Ø ./Ù ./Ú ./Û ./Ü ./Ý ./Þ ./ß ./à ./á ./â ./ã ./ä ./å ./æ ./ç ./è ./é ./ê ./ë ./ì ./í ./î ./ï ./ð ./ñ ./ò ./ó ./ô ./õ ./ö ./÷ ./ø ./ù ./ú ./û ./ü ./ý ./þ ./ÿ
|
||||
par_quote_special_results mkfs.xfs -f 301+0 records in
|
||||
par_quote_special_results mkfs.xfs -f 301+0 records out
|
||||
par_quote_special_results mkfs.minix 21856 inodes
|
||||
par_quote_special_results mkfs.minix 65535 blocks
|
||||
par_quote_special_results mkfs.minix Firstdatazone=696 (696)
|
||||
par_quote_special_results mkfs.minix Zonesize=1024
|
||||
par_quote_special_results mkfs.minix Maxsize=268966912
|
||||
par_quote_special_results mkfs.minix
|
||||
par_quote_special_results mkfs.minix Filesystem 1K-blocks Used Available Use% Mounted on
|
||||
par_quote_special_results mkfs.minix /dev/loop 999999 99999 99999 9% /tmp/par-test-loop
|
||||
par_quote_special_results mkfs.minix . ./++ ./++++ ./++_ ./++__ ./++m ./++z ./+_ ./+__ ./+m ./+z ./,. ./,..
|
||||
par_quote_special_results mkfs.minix
|
||||
par_quote_special_results mkfs.minix . ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./
par_quote_special_results mkfs.minix ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./! ./" ./# ./$ ./% ./& ./' ./( ./) ./* ./++ ./+_ ./+z ./, ./- ./0 ./1 ./2 ./3 ./4 ./5 ./6 ./7 ./8 ./9 ./: ./; ./< ./= ./> ./? ./@ ./A ./B ./C ./D ./E ./F ./G ./H ./I ./J ./K ./L ./M ./N ./O ./P ./Q ./R ./S ./T ./U ./V ./W ./X ./Y ./Z ./[ ./\ ./] ./^ ./_ ./` ./a ./b ./c ./d ./e ./f ./g ./h ./i ./j ./k ./l ./m ./n ./o ./p ./q ./r ./s ./t ./u ./v ./w ./x ./y ./z ./{ ./| ./} ./~ ./ ./€
|
||||
par_quote_special_results mkfs.minix . ./€ ./<2F> ./‚ ./ƒ ./„ ./… ./† ./‡ ./ˆ ./‰ ./Š ./‹ ./Œ ./<2F> ./Ž ./<2F> ./<2F> ./‘ ./’ ./“ ./” ./• ./– ./— ./˜ ./™ ./š ./› ./œ ./<2F> ./ž ./Ÿ ./ ./¡ ./¢ ./£ ./¤ ./¥ ./¦ ./§ ./¨ ./© ./ª ./« ./¬ ./ ./® ./¯ ./° ./± ./² ./³ ./´ ./µ ./¶ ./· ./¸ ./¹ ./º ./» ./¼ ./½ ./¾ ./¿ ./À ./Á ./ ./à ./Ä ./Å ./Æ ./Ç ./È ./É ./Ê ./Ë ./Ì ./Í ./Î ./Ï ./Ð ./Ñ ./Ò ./Ó ./Ô ./Õ ./Ö ./× ./Ø ./Ù ./Ú ./Û ./Ü ./Ý ./Þ ./ß ./à ./á ./â ./ã ./ä ./å ./æ ./ç ./è ./é ./ê ./ë ./ì ./í ./î ./ï ./ð ./ñ ./ò ./ó ./ô ./õ ./ö ./÷ ./ø ./ù ./ú ./û ./ü ./ý ./þ ./ÿ
|
||||
par_quote_special_results mkfs.minix 301+0 records in
|
||||
par_quote_special_results mkfs.minix 301+0 records out
|
||||
par_quote_special_results mkfs.fat mkfs.fat 4.2 (2021-01-31)
|
||||
par_quote_special_results mkfs.fat Filesystem 1K-blocks Used Available Use% Mounted on
|
||||
par_quote_special_results mkfs.fat /dev/loop 999999 99999 99999 9% /tmp/par-test-loop
|
||||
par_quote_special_results mkfs.fat . ./++ ./++++ ./++_ ./++__ ./++m ./++z ./+_ ./+__ ./+m ./+z ./,
|
||||
par_quote_special_results mkfs.fat . ./! ./# ./$ ./% ./& ./' ./( ./) ./++ ./+01 ./+02 ./+03 ./+04 ./+05 ./+06 ./+07 ./+08 ./+09 ./+0a ./+0b ./+0c ./+0d ./+0e ./+0f ./+10 ./+11 ./+12 ./+13 ./+14 ./+15 ./+16 ./+17 ./+18 ./+19 ./+1a ./+1b ./+1c ./+1d ./+1e ./+1f ./+20 ./+_ ./+a ./+b ./+d ./+g ./+k ./+l ./+p ./+y ./+z ./, ./- ./0 ./1 ./2 ./3 ./4 ./5 ./6 ./7 ./8 ./9 ./; ./= ./@ ./A ./B ./C ./D ./E ./F ./G ./H ./I ./J ./K ./L ./M ./N ./O ./P ./Q ./R ./S ./T ./U ./V ./W ./X ./Y ./Z ./[ ./] ./^ ./_ ./` ./{ ./} ./~ ./ ./€
|
||||
par_quote_special_results mkfs.fat . ./€ ./<2F> ./‚ ./ƒ ./„ ./… ./† ./‡ ./ˆ ./‰ ./Š ./‹ ./Œ ./<2F> ./Ž ./<2F> ./<2F> ./‘ ./’ ./“ ./” ./• ./– ./— ./˜ ./™ ./š ./› ./œ ./<2F> ./ž ./Ÿ ./ ./¡ ./¢ ./£ ./¤ ./¥ ./¦ ./§ ./¨ ./© ./ª ./« ./¬ ./ ./® ./¯ ./° ./± ./² ./³ ./´ ./µ ./¶ ./· ./¸ ./¹ ./º ./» ./¼ ./½ ./¾ ./¿ ./À ./Á ./ ./à ./Ä ./Å ./Æ ./Ç ./È ./É ./Ê ./Ë ./Ì ./Í ./Î ./Ï ./Ð ./Ñ ./Ò ./Ó ./Ô ./Õ ./Ö ./× ./Ø ./Ù ./Ú ./Û ./Ü ./Ý ./Þ ./ß ./÷ ./ÿ
|
||||
par_quote_special_results mkfs.fat 301+0 records in
|
||||
par_quote_special_results mkfs.fat 301+0 records out
|
||||
par_quote_special_results mkfs.vfat mkfs.fat 4.2 (2021-01-31)
|
||||
par_quote_special_results mkfs.vfat Filesystem 1K-blocks Used Available Use% Mounted on
|
||||
par_quote_special_results mkfs.vfat /dev/loop 999999 99999 99999 9% /tmp/par-test-loop
|
||||
par_quote_special_results mkfs.vfat . ./++ ./++++ ./++_ ./++__ ./++m ./++z ./+_ ./+__ ./+m ./+z ./,
|
||||
par_quote_special_results mkfs.vfat . ./! ./# ./$ ./% ./& ./' ./( ./) ./++ ./+01 ./+02 ./+03 ./+04 ./+05 ./+06 ./+07 ./+08 ./+09 ./+0a ./+0b ./+0c ./+0d ./+0e ./+0f ./+10 ./+11 ./+12 ./+13 ./+14 ./+15 ./+16 ./+17 ./+18 ./+19 ./+1a ./+1b ./+1c ./+1d ./+1e ./+1f ./+20 ./+_ ./+a ./+b ./+d ./+g ./+k ./+l ./+p ./+y ./+z ./, ./- ./0 ./1 ./2 ./3 ./4 ./5 ./6 ./7 ./8 ./9 ./; ./= ./@ ./A ./B ./C ./D ./E ./F ./G ./H ./I ./J ./K ./L ./M ./N ./O ./P ./Q ./R ./S ./T ./U ./V ./W ./X ./Y ./Z ./[ ./] ./^ ./_ ./` ./{ ./} ./~ ./ ./€
|
||||
par_quote_special_results mkfs.vfat . ./€ ./<2F> ./‚ ./ƒ ./„ ./… ./† ./‡ ./ˆ ./‰ ./Š ./‹ ./Œ ./<2F> ./Ž ./<2F> ./<2F> ./‘ ./’ ./“ ./” ./• ./– ./— ./˜ ./™ ./š ./› ./œ ./<2F> ./ž ./Ÿ ./ ./¡ ./¢ ./£ ./¤ ./¥ ./¦ ./§ ./¨ ./© ./ª ./« ./¬ ./ ./® ./¯ ./° ./± ./² ./³ ./´ ./µ ./¶ ./· ./¸ ./¹ ./º ./» ./¼ ./½ ./¾ ./¿ ./À ./Á ./ ./à ./Ä ./Å ./Æ ./Ç ./È ./É ./Ê ./Ë ./Ì ./Í ./Î ./Ï ./Ð ./Ñ ./Ò ./Ó ./Ô ./Õ ./Ö ./× ./Ø ./Ù ./Ú ./Û ./Ü ./Ý ./Þ ./ß ./÷ ./ÿ
|
||||
par_quote_special_results mkfs.vfat 301+0 records in
|
||||
par_quote_special_results mkfs.vfat 301+0 records out
|
||||
par_quote_special_results mkfs.msdos mkfs.fat 4.2 (2021-01-31)
|
||||
par_quote_special_results mkfs.msdos Filesystem 1K-blocks Used Available Use% Mounted on
|
||||
par_quote_special_results mkfs.msdos /dev/loop 999999 99999 99999 9% /tmp/par-test-loop
|
||||
par_quote_special_results mkfs.msdos . ./++ ./++++ ./++_ ./++__ ./++m ./++z ./+_ ./+__ ./+m ./+z ./,
|
||||
par_quote_special_results mkfs.msdos . ./! ./# ./$ ./% ./& ./' ./( ./) ./++ ./+01 ./+02 ./+03 ./+04 ./+05 ./+06 ./+07 ./+08 ./+09 ./+0a ./+0b ./+0c ./+0d ./+0e ./+0f ./+10 ./+11 ./+12 ./+13 ./+14 ./+15 ./+16 ./+17 ./+18 ./+19 ./+1a ./+1b ./+1c ./+1d ./+1e ./+1f ./+20 ./+_ ./+a ./+b ./+d ./+g ./+k ./+l ./+p ./+y ./+z ./, ./- ./0 ./1 ./2 ./3 ./4 ./5 ./6 ./7 ./8 ./9 ./; ./= ./@ ./A ./B ./C ./D ./E ./F ./G ./H ./I ./J ./K ./L ./M ./N ./O ./P ./Q ./R ./S ./T ./U ./V ./W ./X ./Y ./Z ./[ ./] ./^ ./_ ./` ./{ ./} ./~ ./ ./€
|
||||
par_quote_special_results mkfs.msdos . ./€ ./<2F> ./‚ ./ƒ ./„ ./… ./† ./‡ ./ˆ ./‰ ./Š ./‹ ./Œ ./<2F> ./Ž ./<2F> ./<2F> ./‘ ./’ ./“ ./” ./• ./– ./— ./˜ ./™ ./š ./› ./œ ./<2F> ./ž ./Ÿ ./ ./¡ ./¢ ./£ ./¤ ./¥ ./¦ ./§ ./¨ ./© ./ª ./« ./¬ ./ ./® ./¯ ./° ./± ./² ./³ ./´ ./µ ./¶ ./· ./¸ ./¹ ./º ./» ./¼ ./½ ./¾ ./¿ ./À ./Á ./ ./à ./Ä ./Å ./Æ ./Ç ./È ./É ./Ê ./Ë ./Ì ./Í ./Î ./Ï ./Ð ./Ñ ./Ò ./Ó ./Ô ./Õ ./Ö ./× ./Ø ./Ù ./Ú ./Û ./Ü ./Ý ./Þ ./ß ./÷ ./ÿ
|
||||
par_quote_special_results mkfs.msdos 301+0 records in
|
||||
par_quote_special_results mkfs.msdos 301+0 records out
|
||||
par_quote_special_results mkfs.f2fs
|
||||
par_quote_special_results mkfs.f2fs
|
||||
par_quote_special_results mkfs.f2fs Info: Disable heap-based policy
|
||||
par_quote_special_results mkfs.f2fs Info: Debug level = 0
|
||||
par_quote_special_results mkfs.f2fs Info: Trim is enabled
|
||||
par_quote_special_results mkfs.f2fs Info: Segments per section = 1
|
||||
par_quote_special_results mkfs.f2fs Info: Sections per zone = 1
|
||||
par_quote_special_results mkfs.f2fs Info: sector size = 512
|
||||
par_quote_special_results mkfs.f2fs Info: total sectors = 616448 (301 MB)
|
||||
par_quote_special_results mkfs.f2fs Info: zone aligned segment0 blkaddr: 512
|
||||
par_quote_special_results mkfs.f2fs Info: format version with
|
||||
par_quote_special_results mkfs.f2fs Info: [/dev/shm/par-test-loop Discarding device
|
||||
par_quote_special_results mkfs.f2fs Info: format successful
|
||||
par_quote_special_results mkfs.f2fs Filesystem 1K-blocks Used Available Use% Mounted on
|
||||
par_quote_special_results mkfs.f2fs /dev/loop 999999 99999 99999 9% /tmp/par-test-loop
|
||||
par_quote_special_results mkfs.f2fs . ./++ ./++++ ./++_ ./++__ ./++m ./++z ./+_ ./+__ ./+m ./+z ./,. ./,..
|
||||
par_quote_special_results mkfs.f2fs
|
||||
par_quote_special_results mkfs.f2fs . ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./
par_quote_special_results mkfs.f2fs ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./! ./" ./# ./$ ./% ./& ./' ./( ./) ./* ./++ ./+_ ./+z ./, ./- ./0 ./1 ./2 ./3 ./4 ./5 ./6 ./7 ./8 ./9 ./: ./; ./< ./= ./> ./? ./@ ./A ./B ./C ./D ./E ./F ./G ./H ./I ./J ./K ./L ./M ./N ./O ./P ./Q ./R ./S ./T ./U ./V ./W ./X ./Y ./Z ./[ ./\ ./] ./^ ./_ ./` ./a ./b ./c ./d ./e ./f ./g ./h ./i ./j ./k ./l ./m ./n ./o ./p ./q ./r ./s ./t ./u ./v ./w ./x ./y ./z ./{ ./| ./} ./~ ./ ./€
|
||||
par_quote_special_results mkfs.f2fs . ./€ ./<2F> ./‚ ./ƒ ./„ ./… ./† ./‡ ./ˆ ./‰ ./Š ./‹ ./Œ ./<2F> ./Ž ./<2F> ./<2F> ./‘ ./’ ./“ ./” ./• ./– ./— ./˜ ./™ ./š ./› ./œ ./<2F> ./ž ./Ÿ ./ ./¡ ./¢ ./£ ./¤ ./¥ ./¦ ./§ ./¨ ./© ./ª ./« ./¬ ./ ./® ./¯ ./° ./± ./² ./³ ./´ ./µ ./¶ ./· ./¸ ./¹ ./º ./» ./¼ ./½ ./¾ ./¿ ./À ./Á ./ ./à ./Ä ./Å ./Æ ./Ç ./È ./É ./Ê ./Ë ./Ì ./Í ./Î ./Ï ./Ð ./Ñ ./Ò ./Ó ./Ô ./Õ ./Ö ./× ./Ø ./Ù ./Ú ./Û ./Ü ./Ý ./Þ ./ß ./à ./á ./â ./ã ./ä ./å ./æ ./ç ./è ./é ./ê ./ë ./ì ./í ./î ./ï ./ð ./ñ ./ò ./ó ./ô ./õ ./ö ./÷ ./ø ./ù ./ú ./û ./ü ./ý ./þ ./ÿ
|
||||
par_quote_special_results mkfs.f2fs 301+0 records in
|
||||
par_quote_special_results mkfs.f2fs 301+0 records out
|
||||
par_results_csv bug #: --results csv
|
||||
par_results_csv --header : --tag --files0 --compress Seq,Host,Starttime,JobRuntime,Send,Receive,Exitval,Signal,Command,H2,H1,Stdout,Stderr
|
||||
par_results_csv --header : --tag --files0 --compress 1,:,999.999,999.999,0,15,0,0,"echo 22 11",22,11,"22 11 /TMP/tmpfile",
|
||||
|
@ -1105,8 +1372,6 @@ par_seqreplace_long_line 9 1 1 101
|
|||
par_seqreplace_long_line 90 1 1 201
|
||||
par_seqreplace_long_line 1 parallel: Error: Command line too long (309 >= 210) at input 0: 100
|
||||
par_shellquote ### Test --shellquote in all shells
|
||||
par_shellquote ash '
|
||||
par_shellquote ash
par_shellquote ash !"#$%&'"'"'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€<7F>‚ƒ„…†‡ˆ‰Š‹Œ<E280B9>Ž<EFBFBD><C5BD>‘’“”•–—˜™š›œ<E280BA>žŸ ¡¢£¤¥¦§¨©ª«¬®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×ØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ'
|
||||
par_shellquote bash '
|
||||
par_shellquote bash
par_shellquote bash !"#$%&'"'"'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€<7F>‚ƒ„…†‡ˆ‰Š‹Œ<E280B9>Ž<EFBFBD><C5BD>‘’“”•–—˜™š›œ<E280BA>žŸ ¡¢£¤¥¦§¨©ª«¬®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×ØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ'
|
||||
par_shellquote csh \\\\\\\\ "\
|
||||
|
@ -1144,19 +1409,6 @@ par_shellquote csh \\\\\\\\ "\
|
|||
par_shellquote csh "\\\
par_shellquote csh \\\\\\\\\\\\\\ \!\"\#\$%\&\'\(\)\*+,-./0123456789:\;\<\=\>\?@ABCDEFGHIJKLMNOPQRSTUVWXYZ\[\\\]\^_\`abcdefghijklmnopqrstuvwxyz\{\|\}\~€<7F>\‚\ƒ\„\…\†\‡\ˆ\‰\Š\‹\Œ\<5C>\Ž\<5C>\<5C>\‘\’\“\”\•\–\—\˜\™\š\›\œ\<5C>\ž\Ÿ\ \¡\¢\£\¤\¥\¦\§\¨\©\ª\«\¬\\®\¯\°\±\²\³\´\µ\¶\·\¸\¹\º\»\¼\½\¾\¿\À\Á\Â\Ã\Ä\Å\Æ\Ç\È\É\Ê\Ë\Ì\Í\Î\Ï\Ð\Ñ\Ò\Ó\Ô\Õ\Ö\×\Ø\Ù\Ú\Û\Ü\Ý\Þ\ß\à\á\â\ã\ä\å\æ\ç\è\é\ê\ë\ì\í\î\ï\ð\ñ\ò\ó\ô\õ\ö\÷\ø\ù\ú\û\ü\ý\þ\ÿ
|
||||
par_shellquote tcsh \\\\\\\\ "\
|
||||
par_shellquote tcsh "\\\
par_shellquote tcsh \\\\\\\\\\\\\\ \!\"\#\$%\&\'\(\)\*+,-./0123456789:\;\<\=\>\?@ABCDEFGHIJKLMNOPQRSTUVWXYZ\[\\\]\^_\`abcdefghijklmnopqrstuvwxyz\{\|\}\~€<7F>\‚\ƒ\„\…\†\‡\ˆ\‰\Š\‹\Œ\<5C>\Ž\<5C>\<5C>\‘\’\“\”\•\–\—\˜\™\š\›\œ\<5C>\ž\Ÿ\ \¡\¢\£\¤\¥\¦\§\¨\©\ª\«\¬\\®\¯\°\±\²\³\´\µ\¶\·\¸\¹\º\»\¼\½\¾\¿\À\Á\Â\Ã\Ä\Å\Æ\Ç\È\É\Ê\Ë\Ì\Í\Î\Ï\Ð\Ñ\Ò\Ó\Ô\Õ\Ö\×\Ø\Ù\Ú\Û\Ü\Ý\Þ\ß\à\á\â\ã\ä\å\æ\ç\è\é\ê\ë\ì\í\î\ï\ð\ñ\ò\ó\ô\õ\ö\÷\ø\ù\ú\û\ü\ý\þ\ÿ
|
||||
par_tee_too_many_args ### Fail if there are more arguments than --jobs
|
||||
par_tee_too_many_args 1 1
|
||||
par_tee_too_many_args 1 10
|
||||
par_tee_too_many_args 1 11
|
||||
par_tee_too_many_args 2 2
|
||||
par_tee_too_many_args 3 3
|
||||
par_tee_too_many_args 4 4
|
||||
par_tee_too_many_args parallel: Warning: Only enough file handles to run 999 jobs in parallel.
|
||||
par_tee_too_many_args parallel: Warning: Try running 'parallel -j999 -N 999 --pipe parallel -j999'
|
||||
par_tee_too_many_args parallel: Warning: or increasing 'ulimit -n' (try: ulimit -n `ulimit -Hn`)
|
||||
par_tee_too_many_args parallel: Warning: or increasing 'nofile' in /etc/security/limits.conf
|
||||
par_tee_too_many_args parallel: Warning: or increasing /proc/sys/fs/file-max
|
||||
par_tee_too_many_args parallel: Error: --tee requires --jobs to be higher. Try --jobs 999.
|
||||
par_tmp_full ### Test --tmpdir running full. bug #40733 was caused by this
|
||||
par_tmp_full parallel: Error: Output is incomplete.
|
||||
par_tmp_full parallel: Error: Cannot append to buffer file in /tmp/shm/parallel.
|
||||
|
@ -1166,150 +1418,3 @@ par_tmux_fg bug #50107: --tmux --fg should also write how to access it
|
|||
par_tmux_fg See output with: tmux -S /TMPtmpfile attach
|
||||
par_tmux_fg open terminal failed: not a terminal
|
||||
par_totaljobs OK
|
||||
par_xargs_compat xargs compatibility
|
||||
par_xargs_compat ### Test -L -l and --max-lines
|
||||
par_xargs_compat a_b
|
||||
par_xargs_compat c
|
||||
par_xargs_compat a_b c
|
||||
par_xargs_compat a_b c
|
||||
par_xargs_compat ### xargs -L1 echo
|
||||
par_xargs_compat a_b
|
||||
par_xargs_compat c
|
||||
par_xargs_compat a_b
|
||||
par_xargs_compat c
|
||||
par_xargs_compat a_b
|
||||
par_xargs_compat c
|
||||
par_xargs_compat Lines ending in space should continue on next line
|
||||
par_xargs_compat ### xargs -L1 echo
|
||||
par_xargs_compat a_b c
|
||||
par_xargs_compat d
|
||||
par_xargs_compat a_b c
|
||||
par_xargs_compat d
|
||||
par_xargs_compat a_b c
|
||||
par_xargs_compat d
|
||||
par_xargs_compat ### xargs -L2 echo
|
||||
par_xargs_compat a_b c d
|
||||
par_xargs_compat e
|
||||
par_xargs_compat a_b c d
|
||||
par_xargs_compat e
|
||||
par_xargs_compat a_b c d
|
||||
par_xargs_compat e
|
||||
par_xargs_compat ### xargs -l echo
|
||||
par_xargs_compat a_b c
|
||||
par_xargs_compat d
|
||||
par_xargs_compat e
|
||||
par_xargs_compat a_b c
|
||||
par_xargs_compat d
|
||||
par_xargs_compat e
|
||||
par_xargs_compat a_b c
|
||||
par_xargs_compat d
|
||||
par_xargs_compat e
|
||||
par_xargs_compat ### xargs -l2 echo
|
||||
par_xargs_compat a_b c d
|
||||
par_xargs_compat e
|
||||
par_xargs_compat a_b c d
|
||||
par_xargs_compat e
|
||||
par_xargs_compat a_b c d
|
||||
par_xargs_compat e
|
||||
par_xargs_compat ### xargs -l1 echo
|
||||
par_xargs_compat a_b c
|
||||
par_xargs_compat d
|
||||
par_xargs_compat e
|
||||
par_xargs_compat a_b c
|
||||
par_xargs_compat d
|
||||
par_xargs_compat e
|
||||
par_xargs_compat a_b c
|
||||
par_xargs_compat d
|
||||
par_xargs_compat e
|
||||
par_xargs_compat ### xargs --max-lines=2 echo
|
||||
par_xargs_compat a_b c d
|
||||
par_xargs_compat e
|
||||
par_xargs_compat a_b c d
|
||||
par_xargs_compat e
|
||||
par_xargs_compat a_b c d
|
||||
par_xargs_compat e
|
||||
par_xargs_compat ### xargs --max-lines echo
|
||||
par_xargs_compat a_b c
|
||||
par_xargs_compat d
|
||||
par_xargs_compat e
|
||||
par_xargs_compat a_b c
|
||||
par_xargs_compat d
|
||||
par_xargs_compat e
|
||||
par_xargs_compat a_b c
|
||||
par_xargs_compat d
|
||||
par_xargs_compat e
|
||||
par_xargs_compat ### test too long args
|
||||
par_xargs_compat parallel: Error: Command line too long (1000005 >= 63543) at input 0: zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz...
|
||||
par_xargs_compat xargs: argument line too long
|
||||
par_xargs_compat parallel: Error: Command line too long (1000007 >= 10) at input 0: zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz...
|
||||
par_xargs_compat 1 2
|
||||
par_xargs_compat 3 4
|
||||
par_xargs_compat 5 6
|
||||
par_xargs_compat 7 8
|
||||
par_xargs_compat 9 10
|
||||
par_xargs_compat xargs: argument line too long
|
||||
par_xargs_compat 1 2
|
||||
par_xargs_compat 3 4
|
||||
par_xargs_compat 5 6
|
||||
par_xargs_compat 7 8
|
||||
par_xargs_compat 9 10
|
||||
par_xargs_compat parallel: Error: Command line too long (1000007 >= 10) at input 0: zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz...
|
||||
par_xargs_compat 1 2
|
||||
par_xargs_compat 3 4
|
||||
par_xargs_compat 5 6
|
||||
par_xargs_compat 7 8
|
||||
par_xargs_compat 9 10
|
||||
par_xargs_compat ### Test -x
|
||||
par_xargs_compat -km
|
||||
par_xargs_compat parallel: Error: Command line too long (10 >= 10) at input 0: 12345
|
||||
par_xargs_compat 1 2
|
||||
par_xargs_compat 3 4
|
||||
par_xargs_compat 5 6
|
||||
par_xargs_compat 7 8
|
||||
par_xargs_compat 9 10
|
||||
par_xargs_compat -kX
|
||||
par_xargs_compat parallel: Error: Command line too long (10 >= 10) at input 0: 12345
|
||||
par_xargs_compat 1 2
|
||||
par_xargs_compat 3 4
|
||||
par_xargs_compat 5 6
|
||||
par_xargs_compat 7 8
|
||||
par_xargs_compat 9 10
|
||||
par_xargs_compat -x
|
||||
par_xargs_compat xargs: argument line too long
|
||||
par_xargs_compat 1 2
|
||||
par_xargs_compat 3 4
|
||||
par_xargs_compat 5 6
|
||||
par_xargs_compat 7 8
|
||||
par_xargs_compat -km -x
|
||||
par_xargs_compat 1 2
|
||||
par_xargs_compat 12
|
||||
par_xargs_compat 1234
|
||||
par_xargs_compat 13
|
||||
par_xargs_compat 14
|
||||
par_xargs_compat 15
|
||||
par_xargs_compat 3 4
|
||||
par_xargs_compat 5 6
|
||||
par_xargs_compat 7 8
|
||||
par_xargs_compat 9 10
|
||||
par_xargs_compat -kX -x
|
||||
par_xargs_compat 1 2
|
||||
par_xargs_compat 12
|
||||
par_xargs_compat 1234
|
||||
par_xargs_compat 13
|
||||
par_xargs_compat 14
|
||||
par_xargs_compat 15
|
||||
par_xargs_compat 3 4
|
||||
par_xargs_compat 5 6
|
||||
par_xargs_compat 7 8
|
||||
par_xargs_compat 9 10
|
||||
par_xargs_compat -x
|
||||
par_xargs_compat 1 2
|
||||
par_xargs_compat 12
|
||||
par_xargs_compat 1234
|
||||
par_xargs_compat 13
|
||||
par_xargs_compat 14
|
||||
par_xargs_compat 15
|
||||
par_xargs_compat 3 4
|
||||
par_xargs_compat 5 6
|
||||
par_xargs_compat 7 8
|
||||
par_xargs_compat 9 10
|
||||
|
|
|
@ -960,8 +960,6 @@ par_test_m_X a1.gifb1c1 a2.gifb2c2 a3.gifb3c3 a4.gifb4c4 a5.gifb5c5 a6.gifb6c6
|
|||
par_test_m_X ### Test -q {.}
|
||||
par_test_m_X 'a'
|
||||
par_test_m_X 'a'
|
||||
par_testquote ash "#&/
|
||||
par_testquote ash ()*=?'
|
||||
par_testquote bash "#&/
|
||||
par_testquote bash ()*=?'
|
||||
par_testquote csh "#&/
|
||||
|
|
|
@ -1643,16 +1643,6 @@ par_bin 9 2
|
|||
par_exit_code bug #52207: Exit status 0 when child job is killed, even with "now,fail=1"
|
||||
par_exit_code # Ideally the command should return the same
|
||||
par_exit_code # with or without parallel
|
||||
par_exit_code ash /tmp/mysleep 100 137
|
||||
par_exit_code ash parallel --halt-on-error now,fail=1 /tmp/mysleep ::: 100 137
|
||||
par_exit_code ash parallel --halt-on-error now,done=1 /tmp/mysleep ::: 100 137
|
||||
par_exit_code ash parallel --halt-on-error now,done=1 /bin/true ::: 100 0
|
||||
par_exit_code ash parallel --halt-on-error now,done=1 exit ::: 100 100
|
||||
par_exit_code ash true;/tmp/mysleep 100 137
|
||||
par_exit_code ash parallel --halt-on-error now,fail=1 'true;/tmp/mysleep' ::: 100 137
|
||||
par_exit_code ash parallel --halt-on-error now,done=1 'true;/tmp/mysleep' ::: 100 137
|
||||
par_exit_code ash parallel --halt-on-error now,done=1 'true;/bin/true' ::: 100 0
|
||||
par_exit_code ash parallel --halt-on-error now,done=1 'true;exit' ::: 100 100
|
||||
par_exit_code csh /tmp/mysleep 100 137
|
||||
par_exit_code csh parallel --halt-on-error now,fail=1 /tmp/mysleep ::: 100 137
|
||||
par_exit_code csh parallel --halt-on-error now,done=1 /tmp/mysleep ::: 100 137
|
||||
|
@ -3069,7 +3059,6 @@ par_slow_total_jobs 1
|
|||
par_slow_total_jobs 2
|
||||
par_slow_total_jobs parallel: Warning: Reading X arguments took longer than XX seconds.
|
||||
par_test_detected_shell ### bug #42913: Dont use $SHELL but the shell currently running
|
||||
par_test_detected_shell test_unknown_shell ash Global::shell /usr/bin/bash
|
||||
par_test_detected_shell test_unknown_shell bash Global::shell /usr/bin/bash
|
||||
par_test_detected_shell test_unknown_shell csh Global::shell /usr/bin/bash
|
||||
par_test_detected_shell test_unknown_shell dash Global::shell /usr/bin/bash
|
||||
|
@ -3086,7 +3075,6 @@ par_test_detected_shell test_unknown_shell sh Global::shell /usr/bin/bash
|
|||
par_test_detected_shell test_unknown_shell tcsh Global::shell /usr/bin/bash
|
||||
par_test_detected_shell test_unknown_shell yash Global::shell /usr/bin/bash
|
||||
par_test_detected_shell test_unknown_shell zsh Global::shell /usr/bin/bash
|
||||
par_test_detected_shell test_known_shell_c ash Global::shell /usr/bin/ash
|
||||
par_test_detected_shell test_known_shell_c bash Global::shell /usr/bin/bash
|
||||
par_test_detected_shell test_known_shell_c csh Global::shell /usr/bin/csh
|
||||
par_test_detected_shell test_known_shell_c dash Global::shell /usr/bin/dash
|
||||
|
@ -3104,7 +3092,6 @@ par_test_detected_shell test_known_shell_c static-sh Global::shell /usr/bin/stat
|
|||
par_test_detected_shell test_known_shell_c tcsh Global::shell /usr/bin/tcsh
|
||||
par_test_detected_shell test_known_shell_c yash Global::shell /usr/bin/yash
|
||||
par_test_detected_shell test_known_shell_c zsh Global::shell /usr/bin/zsh
|
||||
par_test_detected_shell test_known_shell_pipe ash Global::shell /usr/bin/ash
|
||||
par_test_detected_shell test_known_shell_pipe bash Global::shell /usr/bin/bash
|
||||
par_test_detected_shell test_known_shell_pipe csh Global::shell /usr/bin/csh
|
||||
par_test_detected_shell test_known_shell_pipe dash Global::shell /usr/bin/dash
|
||||
|
|
|
@ -630,7 +630,7 @@ par__test_cpu_detection_cpuinfo 1-4-8-4 Lenovo E540 i7-4712MQ (PROSA stud organi
|
|||
par__test_cpu_detection_cpuinfo 1 4 8 4
|
||||
par__test_cpu_detection_cpuinfo 1-4-8-4 Core i7-3632QM Acer laptop
|
||||
par__test_cpu_detection_cpuinfo 1 4 8 4
|
||||
par__test_cpu_detection_cpuinfo 1-16-24-16 8*2 thr + 8*1 thr Intel Core i7-13700HX (user submit)
|
||||
par__test_cpu_detection_cpuinfo 1-16-24-16 8*2 thr + 8*1 thr Intel Core i7-13700HX (user submit - detected wrong)
|
||||
par__test_cpu_detection_cpuinfo 1 12 24 12
|
||||
par__test_cpu_detection_cpuinfo 1-2-4-2 Core i5-2410M laptop firewall
|
||||
par__test_cpu_detection_cpuinfo 1 2 4 2
|
||||
|
@ -664,7 +664,7 @@ par__test_cpu_detection_lscpu 1-4-8-4 Lenovo E540 i7-4712MQ (PROSA stud organize
|
|||
par__test_cpu_detection_lscpu 1 4 8 4
|
||||
par__test_cpu_detection_lscpu 1-4-8-4 Core i7-3632QM Acer laptop
|
||||
par__test_cpu_detection_lscpu 1 4 8 4
|
||||
par__test_cpu_detection_lscpu 1-16-24-16 8*2 thr + 8*1 thr Intel Core i7-13700HX (user submit)
|
||||
par__test_cpu_detection_lscpu 1-16-24-16 8*2 thr + 8*1 thr Intel Core i7-13700HX (user submit - detected wrong)
|
||||
par__test_cpu_detection_lscpu 1 12 24 12
|
||||
par__test_cpu_detection_lscpu 1-2-4-2 Core i5-2410M laptop firewall
|
||||
par__test_cpu_detection_lscpu 1 2 4 2
|
||||
|
@ -680,8 +680,8 @@ par__test_cpu_detection_topology 1-4-8-4 Lenovo E540 i7-4712MQ (PROSA stud organ
|
|||
par__test_cpu_detection_topology 1 4 8 4
|
||||
par__test_cpu_detection_topology 1-2-4-2 ThinkPad A475 AMD PRO A12-8830B R7 (64g)
|
||||
par__test_cpu_detection_topology 1 2 4 2
|
||||
par__test_cpu_detection_topology 1-16-24-16 8*2 thr + 8*1 thr Intel Core i7-13700HX (user submit)
|
||||
par__test_cpu_detection_topology 1 2 4 2
|
||||
par__test_cpu_detection_topology 1-16-24-16 8*2 thr + 8*1 thr Intel Core i7-13700HX (user submit - detected wrong)
|
||||
par__test_cpu_detection_topology 1 4 8 4
|
||||
par_children_receive_sig ### Do children receive --termseq signals
|
||||
par_children_receive_sig parallel: Warning: This job was killed because it timed out:
|
||||
par_children_receive_sig parallel: Warning: show_signals ''
|
||||
|
@ -781,6 +781,27 @@ par_eta
par_eta ETA: 0s Left: 0 AVG: 0.00s local:0/0/0%/0.0s [K
|
|||
par_exitval_signal ### Test --joblog with exitval and Test --joblog with signal -- timing dependent
|
||||
par_exitval_signal exitval=128+6 OK
|
||||
par_exitval_signal signal OK
|
||||
par_format_string Format string + {}
|
||||
par_format_string 12.346 98.765 == 12.346 98.765
|
||||
par_format_string Format string + {.}
|
||||
par_format_string 12.000 98.000 == 12.000 98.000
|
||||
par_format_string Format string + {2}
|
||||
par_format_string 98.765 == 98.765
|
||||
par_format_string Format string + {2.}
|
||||
par_format_string 98.000 == 98.000
|
||||
par_format_string Format string + {2.}{}
|
||||
par_format_string 98.00012.34567 98.76543 == 98.00012.34567 98.76543
|
||||
par_format_string Dynamic replacement strings
|
||||
par_format_string {dyn} + format
|
||||
par_format_string 12.44 98.77 == 12.44 98.77
|
||||
par_format_string {Positional dyn} + format
|
||||
par_format_string 12.44 98.77 98.765 == 12.44 98.77 98.765
|
||||
par_format_string {dyn__postfix}
|
||||
par_format_string 12.444567 98.765444 == 12.444567 98.765444
|
||||
par_format_string {dyn__postfix} + format
|
||||
par_format_string 00012.44 == 00012.44
|
||||
par_format_string dyn without {}
|
||||
par_format_string 12.444567 98.765444 == 12.444567 98.765444
|
||||
par_jobslot_repl bug #46232: {%} with --bar/--eta/--shuf or --halt xx% broken
|
||||
par_jobslot_repl 1
|
||||
par_jobslot_repl 2
|
||||
|
|
|
@ -1,3 +1,10 @@
|
|||
WHY DOES THIS FAIL?
|
||||
### --env _
|
||||
OK from fubar test
|
||||
In csh this may fail with ignored_var: Undefined variable.
|
||||
### --env _ with explicit mentioning of normally ignored var $ignored_var
|
||||
OK from fubar should be copied test
|
||||
OK from fubar should be copied test
|
||||
bug #46120: Suspend should suspend (at least local) children
|
||||
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
|
||||
|
|
|
@ -1855,7 +1855,7 @@ SQLITE par_empty p_wrapper par_empty $SQLITE
|
|||
SQLITE par_empty Do nothing: TBL99999 does not exist because it is not created
|
||||
SQLITE par_empty Exit=0
|
||||
SQLITE par_empty Exit=0
|
||||
SQLITE par_empty Parse error near line 1: no such table: TBL99999
|
||||
SQLITE par_empty Parse error near line 1: no such table: TBL99999 (1)
|
||||
SQLITE par_no_table p_wrapper par_no_table $SQLITE
|
||||
SQLITE par_no_table bug #50018: --dburl without table dies
|
||||
SQLITE par_no_table 255
|
||||
|
|
|
@ -78,11 +78,11 @@ par__sshpass_with_password ### Crazy passwords: `date>>/tmp/trap`;(|<*&)'
|
|||
par__sshpass_with_password # These fail. The important part is that /tmp/trap is empty
|
||||
par__sshpass_with_password parallel: Warning: Using password or SSHPASS with --(n)onall exposes the password
|
||||
par__sshpass_with_password parallel: Warning: on the command line, making it visible to local users via `ps`.
|
||||
par__sshpass_with_password Permission denied, please try again.
|
||||
par__sshpass_with_password ssh: Could not resolve hostname host:
|
||||
par__sshpass_with_password
|
||||
par__sshpass_with_password parallel: Warning: Using password or SSHPASS with --(n)onall exposes the password
|
||||
par__sshpass_with_password parallel: Warning: on the command line, making it visible to local users via `ps`.
|
||||
par__sshpass_with_password Permission denied, please try again.
|
||||
par__sshpass_with_password ssh: Could not resolve hostname host:
|
||||
par__sshpass_with_password
|
||||
par__sshpass_with_password This must stay empty:
|
||||
par__sshpass_with_password OK
|
||||
|
|
|
@ -278,7 +278,7 @@ par__test_different_rsync_versions rsync-v3.2.4 Basic use works: rsync-v3.2.4
|
|||
par__test_different_rsync_versions rsync-v3.2.5 Basic use works: rsync-v3.2.5
|
||||
par__test_different_rsync_versions rsync-v3.2.6 Basic use works: rsync-v3.2.6
|
||||
par__test_different_rsync_versions rsync-v3.2.7 Basic use works: rsync-v3.2.7
|
||||
par__test_different_rsync_versions rsync-v3.3.0 Basic use failed - not tested: rsync-v3.3.0
|
||||
par__test_different_rsync_versions rsync-v3.3.0 Basic use works: rsync-v3.3.0
|
||||
par_bigvar_csh ### csh
|
||||
par_bigvar_csh 3 big vars run remotely - length(base64) > 1000
|
||||
par_bigvar_csh 1 200 692
|
||||
|
@ -299,13 +299,6 @@ par_bigvar_rc 3 big vars run locally
|
|||
par_bigvar_rc 1 200 692
|
||||
par_bigvar_rc 1 200 692
|
||||
par_bigvar_rc 1 150 547
|
||||
par_env_underscore ### --env _
|
||||
par_env_underscore OK FUBAR test
|
||||
par_env_underscore In csh this may fail with ignored_var: Undefined variable.
|
||||
par_env_underscore ignored_var: Undefined variable.
|
||||
par_env_underscore ### --env _ with explicit mentioning of normally ignored var $ignored_var
|
||||
par_env_underscore OK FUBAR should be copied test
|
||||
par_env_underscore OK FUBAR should be copied test
|
||||
par_exporting_in_zsh ### zsh
|
||||
par_exporting_in_zsh env in zsh
|
||||
par_exporting_in_zsh Normal variable export
|
||||
|
@ -328,7 +321,6 @@ par_warn_when_exporting_func /bin/sh Run function in /bin/sh
|
|||
par_warn_when_exporting_func /bin/sh parallel: Warning: Shell functions may not be supported in /bin/sh.
|
||||
par_warn_when_exporting_func /bin/bash Run function in /bin/bash
|
||||
par_warn_when_exporting_func /bin/bash Function run: OK
|
||||
par_warn_when_exporting_func /bin/ash Run function in /bin/ash
|
||||
par_warn_when_exporting_func /bin/csh Run function in /bin/csh
|
||||
par_warn_when_exporting_func /bin/csh parallel: Warning: Shell functions may not be supported in /bin/csh.
|
||||
par_warn_when_exporting_func /bin/csh CSH/TCSH DO NOT SUPPORT newlines IN VARIABLES/FUNCTIONS. Unset myfunc
|
||||
|
|
|
@ -37,7 +37,7 @@ par_--ssh_autossh AUTOSSH_DEBUG - turn logging to maximum verbosity an
|
|||
par_--ssh_autossh stderr
|
||||
par_--ssh_autossh
|
||||
par_--ssh_autossh rsync: connection unexpectedly closed (0 bytes received so far) [Receiver]
|
||||
par_--ssh_autossh rsync error: error in rsync protocol data stream (code 12) at io.c(231) [Receiver=3.2.7]
|
||||
par_--ssh_autossh rsync error: error in rsync protocol data stream (code 12) at io.c(231) [Receiver=9.9.9]
|
||||
par_--ssh_autossh foo_autossh
|
||||
par_--ssh_lsh ### --ssh lsh
|
||||
par_--ssh_lsh OK
|
||||
|
|
|
@ -1,18 +1,4 @@
|
|||
### test --env _, env_parallel for different shells
|
||||
par_--env_underscore_ash ### ash
|
||||
par_--env_underscore_ash ### Testing of --env _
|
||||
par_--env_underscore_ash variables in aliases work
|
||||
par_--env_underscore_ash variables in aliases work
|
||||
par_--env_underscore_ash variables in aliases work
|
||||
par_--env_underscore_ash variables in aliases work
|
||||
par_--env_underscore_ash script: 4: not_copied_alias: not found
|
||||
par_--env_underscore_ash error=OK
|
||||
par_--env_underscore_ash aliases work
|
||||
par_--env_underscore_ash aliases work
|
||||
par_--env_underscore_ash /bin/ash: 1: myecho: not found
|
||||
par_--env_underscore_ash OK if no myecho ^^^^^^^^^^^^^^^^^
|
||||
par_--env_underscore_ash script: 2: myecho: not found
|
||||
par_--env_underscore_ash OK if no myecho ^^^^^^^^^^^^^^^^^
|
||||
par_--env_underscore_bash ### bash
|
||||
par_--env_underscore_bash ### Testing of --env _
|
||||
par_--env_underscore_bash variables in aliases in and arrays in functions work
|
||||
|
@ -173,41 +159,6 @@ par_--env_underscore_zsh zsh:1: command not found: myfunc
|
|||
par_--env_underscore_zsh OK if no .^^^^^^^^^^^^^^^^^^^^^^^^^ myfunc
|
||||
par_--env_underscore_zsh script:2: command not found: myfunc
|
||||
par_--env_underscore_zsh OK if no .^^^^^^^^^^^^^^^^^^^^^^^^^ myfunc
|
||||
par__man_ash ### ash
|
||||
par__man_ash ### From man env_parallel
|
||||
par__man_ash aliases with = & " ! ' work
|
||||
par__man_ash aliases with = & " ! ' work
|
||||
par__man_ash aliases with = & " ! ' work
|
||||
par__man_ash aliases with = & " ! ' work
|
||||
par__man_ash aliases with = & " ! ' work
|
||||
par__man_ash multiline
|
||||
par__man_ash aliases with = & " ! ' work
|
||||
par__man_ash multiline
|
||||
par__man_ash aliases with = & " ! ' work
|
||||
par__man_ash multiline
|
||||
par__man_ash aliases with = & " ! ' work
|
||||
par__man_ash multiline
|
||||
par__man_ash aliases with = & " ! ' work
|
||||
par__man_ash multiline
|
||||
par__man_ash aliases with = & " ! ' work
|
||||
par__man_ash variables with = & " ! ' work
|
||||
par__man_ash variables with = & " ! ' work
|
||||
par__man_ash variables with = & " ! ' work
|
||||
par__man_ash variables with = & " ! ' work
|
||||
par__man_ash variables with = & " ! ' work
|
||||
par__man_ash multiline
|
||||
par__man_ash variables with = & " ! ' work
|
||||
par__man_ash multiline
|
||||
par__man_ash variables with = & " ! ' work
|
||||
par__man_ash multiline
|
||||
par__man_ash variables with = & " ! ' work
|
||||
par__man_ash multiline
|
||||
par__man_ash variables with = & " ! ' work
|
||||
par__man_ash multiline
|
||||
par__man_ash variables with = & " ! ' work
|
||||
par__man_ash exit value 2 should be 2
|
||||
par__man_ash Unknown option: no-such-option
|
||||
par__man_ash exit value 255 should be 255
|
||||
par__man_bash ### bash
|
||||
par__man_bash ### From man env_parallel
|
||||
par__man_bash aliases with = & " ! ' work
|
||||
|
@ -705,107 +656,6 @@ par__man_zsh env_parallel
|
|||
par__man_zsh exit value 2 should be 2
|
||||
par__man_zsh Unknown option: no-such-option
|
||||
par__man_zsh exit value 255 should be 255
|
||||
par_env_parallel_--session_ash ### Test env_parallel --session
|
||||
par_env_parallel_--session_ash ### level0 should be hidden, level1 should be transferred
|
||||
par_env_parallel_--session_ash
|
||||
par_env_parallel_--session_ash script: 99: level0func: not found
|
||||
par_env_parallel_--session_ash script: 99: level0alias: not found
|
||||
par_env_parallel_--session_ash script: 99: Bad substitution
|
||||
par_env_parallel_--session_ash
|
||||
par_env_parallel_--session_ash /bin/ash: 999: level0func: not found
|
||||
par_env_parallel_--session_ash /bin/ash: 999: level0alias: not found
|
||||
par_env_parallel_--session_ash /bin/ash: 999: Bad substitution
|
||||
par_env_parallel_--session_ash l1var
|
||||
par_env_parallel_--session_ash l1alias
|
||||
par_env_parallel_--session_ash script: 99: level1func: not found
|
||||
par_env_parallel_--session_ash script: 99: Bad substitution
|
||||
par_env_parallel_--session_ash l1var
|
||||
par_env_parallel_--session_ash l1alias
|
||||
par_env_parallel_--session_ash /bin/ash: 999: level1func: not found
|
||||
par_env_parallel_--session_ash /bin/ash: 999: Bad substitution
|
||||
par_env_parallel_--session_ash ### level0+1 should be hidden, level2 should be transferred
|
||||
par_env_parallel_--session_ash
|
||||
par_env_parallel_--session_ash script: 4: level0func: not found
|
||||
par_env_parallel_--session_ash script: 4: level0alias: not found
|
||||
par_env_parallel_--session_ash script: 4: Bad substitution
|
||||
par_env_parallel_--session_ash
|
||||
par_env_parallel_--session_ash /bin/ash: 3: level0func: not found
|
||||
par_env_parallel_--session_ash /bin/ash: 3: level0alias: not found
|
||||
par_env_parallel_--session_ash /bin/ash: 3: Bad substitution
|
||||
par_env_parallel_--session_ash
|
||||
par_env_parallel_--session_ash script: 4: level1func: not found
|
||||
par_env_parallel_--session_ash script: 4: level1alias: not found
|
||||
par_env_parallel_--session_ash script: 4: Bad substitution
|
||||
par_env_parallel_--session_ash
|
||||
par_env_parallel_--session_ash /bin/ash: 3: level1func: not found
|
||||
par_env_parallel_--session_ash /bin/ash: 3: level1alias: not found
|
||||
par_env_parallel_--session_ash /bin/ash: 3: Bad substitution
|
||||
par_env_parallel_--session_ash l2var
|
||||
par_env_parallel_--session_ash l2alias
|
||||
par_env_parallel_--session_ash script: 4: level2func: not found
|
||||
par_env_parallel_--session_ash script: 4: Bad substitution
|
||||
par_env_parallel_--session_ash l2var
|
||||
par_env_parallel_--session_ash l2alias
|
||||
par_env_parallel_--session_ash /bin/ash: 3: level2func: not found
|
||||
par_env_parallel_--session_ash /bin/ash: 3: Bad substitution
|
||||
par_env_parallel_--session_ash ### level0 should be hidden, level1+2 should be transferred
|
||||
par_env_parallel_--session_ash
|
||||
par_env_parallel_--session_ash script: 99: level0func: not found
|
||||
par_env_parallel_--session_ash script: 99: level0alias: not found
|
||||
par_env_parallel_--session_ash script: 99: Bad substitution
|
||||
par_env_parallel_--session_ash
|
||||
par_env_parallel_--session_ash /bin/ash: 999: level0func: not found
|
||||
par_env_parallel_--session_ash /bin/ash: 999: level0alias: not found
|
||||
par_env_parallel_--session_ash /bin/ash: 999: Bad substitution
|
||||
par_env_parallel_--session_ash l1var
|
||||
par_env_parallel_--session_ash l1alias
|
||||
par_env_parallel_--session_ash script: 99: level1func: not found
|
||||
par_env_parallel_--session_ash script: 99: Bad substitution
|
||||
par_env_parallel_--session_ash l1var
|
||||
par_env_parallel_--session_ash l1alias
|
||||
par_env_parallel_--session_ash /bin/ash: 999: level1func: not found
|
||||
par_env_parallel_--session_ash /bin/ash: 999: Bad substitution
|
||||
par_env_parallel_--session_ash l2var
|
||||
par_env_parallel_--session_ash l2alias
|
||||
par_env_parallel_--session_ash script: 99: level2func: not found
|
||||
par_env_parallel_--session_ash script: 99: Bad substitution
|
||||
par_env_parallel_--session_ash l2var
|
||||
par_env_parallel_--session_ash l2alias
|
||||
par_env_parallel_--session_ash /bin/ash: 999: level2func: not found
|
||||
par_env_parallel_--session_ash /bin/ash: 999: Bad substitution
|
||||
par_env_parallel_--session_ash ### level0+1+2 should be transferred
|
||||
par_env_parallel_--session_ash l0var
|
||||
par_env_parallel_--session_ash l0alias
|
||||
par_env_parallel_--session_ash script: 99: level0func: not found
|
||||
par_env_parallel_--session_ash script: 99: Bad substitution
|
||||
par_env_parallel_--session_ash l0var
|
||||
par_env_parallel_--session_ash l0alias
|
||||
par_env_parallel_--session_ash /bin/ash: 999: level0func: not found
|
||||
par_env_parallel_--session_ash /bin/ash: 999: Bad substitution
|
||||
par_env_parallel_--session_ash l1var
|
||||
par_env_parallel_--session_ash l1alias
|
||||
par_env_parallel_--session_ash script: 99: level1func: not found
|
||||
par_env_parallel_--session_ash script: 99: Bad substitution
|
||||
par_env_parallel_--session_ash l1var
|
||||
par_env_parallel_--session_ash l1alias
|
||||
par_env_parallel_--session_ash /bin/ash: 999: level1func: not found
|
||||
par_env_parallel_--session_ash /bin/ash: 999: Bad substitution
|
||||
par_env_parallel_--session_ash l2var
|
||||
par_env_parallel_--session_ash l2alias
|
||||
par_env_parallel_--session_ash script: 99: level2func: not found
|
||||
par_env_parallel_--session_ash script: 99: Bad substitution
|
||||
par_env_parallel_--session_ash l2var
|
||||
par_env_parallel_--session_ash l2alias
|
||||
par_env_parallel_--session_ash /bin/ash: 999: level2func: not found
|
||||
par_env_parallel_--session_ash /bin/ash: 999: Bad substitution
|
||||
par_env_parallel_--session_ash /bin/ash: 1: aliasbefore: not found
|
||||
par_env_parallel_--session_ash script: 2: aliasbefore: not found
|
||||
par_env_parallel_--session_ash no_before
|
||||
par_env_parallel_--session_ash no_before
|
||||
par_env_parallel_--session_ash after aliasafter_OK
|
||||
par_env_parallel_--session_ash after aliasafter_OK
|
||||
par_env_parallel_--session_ash after varafter_OK
|
||||
par_env_parallel_--session_ash after varafter_OK
|
||||
par_env_parallel_--session_bash ### Test env_parallel --session / --end-session
|
||||
par_env_parallel_--session_bash ### level0 should be hidden, level1 should be transferred
|
||||
par_env_parallel_--session_bash
|
||||
|
@ -1450,22 +1300,6 @@ par_env_parallel_--session_zsh after varafter_OK
|
|||
par_env_parallel_--session_zsh after varafter_OK
|
||||
par_env_parallel_--session_zsh array after arrayafter_OK
|
||||
par_env_parallel_--session_zsh array after arrayafter_OK
|
||||
par_env_parallel_ash OK
|
||||
par_env_parallel_ash OK
|
||||
par_env_parallel_ash alias line 1
|
||||
par_env_parallel_ash alias line 1
|
||||
par_env_parallel_ash alias line 2
|
||||
par_env_parallel_ash alias line 2
|
||||
par_env_parallel_ash alias line 3
|
||||
par_env_parallel_ash alias line 3
|
||||
par_env_parallel_ash alias2 line 1
|
||||
par_env_parallel_ash alias2 line 1
|
||||
par_env_parallel_ash alias2 line 2
|
||||
par_env_parallel_ash alias2 line 2
|
||||
par_env_parallel_ash bug #50435: Remote fifo broke in 20150522
|
||||
par_env_parallel_ash bug #52534: Tail of multiline alias is ignored
|
||||
par_env_parallel_ash data from stdin
|
||||
par_env_parallel_ash data from stdin
|
||||
par_env_parallel_bash OK
|
||||
par_env_parallel_bash OK
|
||||
par_env_parallel_bash alias line 1
|
||||
|
@ -1606,7 +1440,6 @@ par_env_parallel_zsh bug #50435: Remote fifo broke in 20150522
|
|||
par_env_parallel_zsh bug #52534: Tail of multiline alias is ignored
|
||||
par_env_parallel_zsh data from stdin
|
||||
par_env_parallel_zsh data from stdin
|
||||
par_environment_too_big_ash moved to hwdep1.sh
|
||||
par_environment_too_big_bash bug #50815: env_parallel should warn if the environment is too big
|
||||
par_environment_too_big_bash OK_bigvar
|
||||
par_environment_too_big_bash OK_bigvar_remote
|
||||
|
@ -1683,11 +1516,6 @@ par_environment_too_big_sh fail_bigfunc_quote-not-supported
|
|||
par_environment_too_big_sh fail_bigfunc_quote_remote-not-supported
|
||||
par_environment_too_big_tcsh Not implemented
|
||||
par_environment_too_big_zsh moved to hwdep1.sh
|
||||
par_funky_ash
|
||||
par_funky_ash ' '
|
||||
par_funky_ash '
par_funky_ash !"#$%&'"'"'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€<7F>‚ƒ„…†‡ˆ‰Š‹Œ<E280B9>Ž<EFBFBD><C5BD>‘’“”•–—˜™š›œ<E280BA>žŸ ¡¢£¤¥¦§¨©ª«¬®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×ØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ'
|
||||
par_funky_ash 3 arg alias_works
|
||||
par_funky_ash 3 arg alias_works_over_ssh
|
||||
par_funky_bash
|
||||
par_funky_bash -funkymultiline
|
||||
par_funky_bash -funkymultiline
|
||||
|
@ -1795,35 +1623,6 @@ par_funky_zsh function_works
|
|||
par_funky_zsh function_works_over_ssh
|
||||
par_funky_zsh myvar works
|
||||
par_funky_zsh myvar works
|
||||
par_parset_ash parset
|
||||
par_parset_ash ### parset into vars with comma
|
||||
par_parset_ash foo bar baz
|
||||
par_parset_ash ### parset into vars with space
|
||||
par_parset_ash foo bar baz
|
||||
par_parset_ash ### parset with newlines
|
||||
par_parset_ash 1
|
||||
par_parset_ash 1
|
||||
par_parset_ash 2
|
||||
par_parset_ash 1
|
||||
par_parset_ash 2
|
||||
par_parset_ash 3
|
||||
par_parset_ash ### env_parset
|
||||
par_parset_ash myecho myvar foo myecho myvar bar myecho myvar baz
|
||||
par_parset_ash myecho myvar foo myecho myvar bar myecho myvar baz
|
||||
par_parset_ash newline1
|
||||
par_parset_ash newline2
|
||||
par_parset_ash 1
|
||||
par_parset_ash newline1
|
||||
par_parset_ash newline2
|
||||
par_parset_ash 1
|
||||
par_parset_ash 2
|
||||
par_parset_ash newline1
|
||||
par_parset_ash newline2
|
||||
par_parset_ash 1
|
||||
par_parset_ash 2
|
||||
par_parset_ash 3
|
||||
par_parset_ash Exit value 2 = 2
|
||||
par_parset_ash Exit value 2 = 2
|
||||
par_parset_bash parset
|
||||
par_parset_bash ### parset into array
|
||||
par_parset_bash foo bar baz
|
||||
|
|
|
@ -34,7 +34,6 @@ par_path_remote_csh StArT
|
|||
par_path_remote_csh CSH Path before: /bin:/usr/bin with no parallel
|
||||
par_path_remote_csh parallel: Command not found.
|
||||
par_path_remote_csh ^^^^^^^^ Not found is OK
|
||||
par_path_remote_csh parallel: Warning: Could not figure out number of cpus on lo (). Using 1.
|
||||
par_path_remote_csh OK: /bin:/usr/bin:/tmp
|
||||
par_path_remote_csh Done
|
||||
par_retries_1 ### Test of --retries - it should run 13 jobs in total
|
||||
|
|
|
@ -134,24 +134,6 @@ par__sshlogin_range parallel: Warning: Could not figure out number of cpus on ip
|
|||
par__sshlogin_range parallel: Warning: Could not figure out number of cpus on ip251.0.9.109 (). Using 1.
|
||||
par__sshlogin_range parallel: Warning: Could not figure out number of cpus on ip251.0.9.110 (). Using 1.
|
||||
par__sshlogin_range parallel: Warning: Could not figure out number of cpus on ip251.0.9.111 (). Using 1.
|
||||
par_ash_embed --embed
|
||||
par_ash_embed Redirect the output to a file and add your changes at the end:
|
||||
par_ash_embed /usr/local/bin/parallel --embed > new_script
|
||||
par_ash_embed Put
|
||||
par_ash_embed your
|
||||
par_ash_embed code
|
||||
par_ash_embed here
|
||||
par_ash_embed parallel_OK
|
||||
par_ash_embed env_parallel --env OK
|
||||
par_ash_embed env_parallel_OK
|
||||
par_ash_embed ParsetOK
|
||||
par_ash_embed Put
|
||||
par_ash_embed your
|
||||
par_ash_embed code
|
||||
par_ash_embed here
|
||||
par_ash_embed Put your code here
|
||||
par_ash_embed You can also activate GNU Parallel for interactive use by:
|
||||
par_ash_embed . ./parallel-embed
|
||||
par_bash_embed --embed
|
||||
par_bash_embed Redirect the output to a file and add your changes at the end:
|
||||
par_bash_embed /usr/local/bin/parallel --embed > new_script
|
||||
|
|
|
@ -72,6 +72,9 @@ par_shebang_with_parser_options 5
|
|||
par_shebang_wrap_R [1] "Arguments arg1"
|
||||
par_shebang_wrap_R [1] "Arguments arg2"
|
||||
par_shebang_wrap_R [1] "Arguments arg3.1 arg3.2"
|
||||
par_shebang_wrap_awk Arguments: arg1
|
||||
par_shebang_wrap_awk Arguments: arg2
|
||||
par_shebang_wrap_awk Arguments: arg3.1 arg3.2
|
||||
par_shebang_wrap_bash Arguments arg1
|
||||
par_shebang_wrap_bash Arguments arg2
|
||||
par_shebang_wrap_bash Arguments arg3.1 arg3.2
|
||||
|
@ -87,9 +90,18 @@ par_shebang_wrap_csh Arguments arg3.1 arg3.2
|
|||
par_shebang_wrap_csharp Arguments arg1
|
||||
par_shebang_wrap_csharp Arguments arg2
|
||||
par_shebang_wrap_csharp Arguments arg3.1 arg3.2
|
||||
par_shebang_wrap_fsharp Arguments: [|"arg1"|]
|
||||
par_shebang_wrap_fsharp Arguments: [|"arg2"|]
|
||||
par_shebang_wrap_fsharp Arguments: [|"arg3.1 arg3.2"|]
|
||||
par_shebang_wrap_gnuplot Arguments arg1
|
||||
par_shebang_wrap_gnuplot Arguments arg2
|
||||
par_shebang_wrap_gnuplot Arguments arg3.1 arg3.2
|
||||
par_shebang_wrap_groovy Arguments: arg1
|
||||
par_shebang_wrap_groovy Arguments: arg2
|
||||
par_shebang_wrap_groovy Arguments: arg3.1 arg3.2
|
||||
par_shebang_wrap_julia Arguments: arg1
|
||||
par_shebang_wrap_julia Arguments: arg2
|
||||
par_shebang_wrap_julia Arguments: arg3.1 arg3.2
|
||||
par_shebang_wrap_ksh Arguments arg1
|
||||
par_shebang_wrap_ksh Arguments arg2
|
||||
par_shebang_wrap_ksh Arguments arg3.1 arg3.2
|
||||
|
@ -117,9 +129,27 @@ par_shebang_wrap_php Arguments arg3.1 arg3.2
|
|||
par_shebang_wrap_python Arguments ['arg1']
|
||||
par_shebang_wrap_python Arguments ['arg2']
|
||||
par_shebang_wrap_python Arguments ['arg3.1 arg3.2']
|
||||
par_shebang_wrap_racket Arguments: arg1
|
||||
par_shebang_wrap_racket Arguments: arg2
|
||||
par_shebang_wrap_racket Arguments: arg3.1 arg3.2
|
||||
par_shebang_wrap_ruby Arguments arg1
|
||||
par_shebang_wrap_ruby Arguments arg2
|
||||
par_shebang_wrap_ruby Arguments arg3.1 arg3.2
|
||||
par_shebang_wrap_scheme Arguments: arg1
|
||||
par_shebang_wrap_scheme `/tmp/trip`>/tmp/tripwire;
|
||||
par_shebang_wrap_scheme
|
||||
par_shebang_wrap_scheme `/tmp/trip`>/tmp/tripwire;
|
||||
par_shebang_wrap_scheme
|
||||
par_shebang_wrap_scheme Arguments: arg2
|
||||
par_shebang_wrap_scheme `/tmp/trip`>/tmp/tripwire;
|
||||
par_shebang_wrap_scheme
|
||||
par_shebang_wrap_scheme `/tmp/trip`>/tmp/tripwire;
|
||||
par_shebang_wrap_scheme
|
||||
par_shebang_wrap_scheme Arguments: arg3.1 arg3.2
|
||||
par_shebang_wrap_scheme `/tmp/trip`>/tmp/tripwire;
|
||||
par_shebang_wrap_scheme
|
||||
par_shebang_wrap_scheme `/tmp/trip`>/tmp/tripwire;
|
||||
par_shebang_wrap_scheme
|
||||
par_shebang_wrap_sh Arguments arg1
|
||||
par_shebang_wrap_sh Arguments arg2
|
||||
par_shebang_wrap_sh Arguments arg3.1 arg3.2
|
||||
|
|
133
testsuite/wanted-results/parallel-ssh-fish
Normal file
133
testsuite/wanted-results/parallel-ssh-fish
Normal file
|
@ -0,0 +1,133 @@
|
|||
par_--env_underscore_fish ### fish
|
||||
par_--env_underscore_fish Fish is broken
|
||||
par_--env_underscore_fish ### Testing of --env _
|
||||
par_--env_underscore_fish Test copying
|
||||
par_--env_underscore_fish variables in aliases and arrays in functions work
|
||||
par_--env_underscore_fish variables in aliases and arrays in functions work
|
||||
par_--env_underscore_fish variables in aliases and arrays in functions work
|
||||
par_--env_underscore_fish variables in aliases and arrays in functions work
|
||||
par_--env_underscore_fish variables in aliases and arrays in functions work
|
||||
par_--env_underscore_fish variables in aliases and arrays in functions work
|
||||
par__man_fish ### fish
|
||||
par__man_fish ### From man env_parallel
|
||||
par__man_fish aliases with = & " ! ' work
|
||||
par__man_fish aliases with = & " ! ' work
|
||||
par__man_fish aliases with = & " ! ' work
|
||||
par__man_fish aliases with = & " ! ' work
|
||||
par__man_fish aliases with = & " ! ' work
|
||||
par__man_fish functions with = & " ! ' work
|
||||
par__man_fish functions with = & " ! ' work
|
||||
par__man_fish functions with = & " ! ' work
|
||||
par__man_fish functions with = & " ! ' work
|
||||
par__man_fish functions with = & " ! ' work
|
||||
par__man_fish variables with = & " ! ' work
|
||||
par__man_fish variables with = & " ! ' work
|
||||
par__man_fish variables with = & " ! ' work
|
||||
par__man_fish variables with = & " ! ' work
|
||||
par__man_fish variables with = & " ! ' work
|
||||
par__man_fish multiline
|
||||
par__man_fish variables with = & " ! ' work
|
||||
par__man_fish multiline
|
||||
par__man_fish variables with = & " ! ' work
|
||||
par__man_fish multiline
|
||||
par__man_fish variables with = & " ! ' work
|
||||
par__man_fish multiline
|
||||
par__man_fish variables with = & " ! ' work
|
||||
par__man_fish multiline
|
||||
par__man_fish variables with = & " ! ' work
|
||||
par__man_fish arrays with = & " ! ' work, too
|
||||
par__man_fish # these 4 fail often. Race condition?
|
||||
par__man_fish arrays
|
||||
par__man_fish with = & " ! '
|
||||
par__man_fish work,
|
||||
par__man_fish too
|
||||
par__man_fish arrays
|
||||
par__man_fish with = & " ! '
|
||||
par__man_fish work,
|
||||
par__man_fish too
|
||||
par__man_fish arrays
|
||||
par__man_fish with = & " ! '
|
||||
par__man_fish work,
|
||||
par__man_fish too
|
||||
par__man_fish arrays
|
||||
par__man_fish with = & " ! '
|
||||
par__man_fish work,
|
||||
par__man_fish too
|
||||
par__man_fish multi
|
||||
par__man_fish level
|
||||
par__man_fish env_parallel
|
||||
par__man_fish exit value 2 should be 2
|
||||
par__man_fish Unknown option: no-such-option
|
||||
par__man_fish exit value 255 should be 255 `sleep 1`
|
||||
par_env_parallel_--session_fish ### Test env_parallel --session
|
||||
par_env_parallel_--session_fish fish: Unknown command: aliasbefore
|
||||
par_env_parallel_--session_fish fish:
|
||||
par_env_parallel_--session_fish aliasbefore must_fail
|
||||
par_env_parallel_--session_fish
|
||||
par_env_parallel_--session_fish fish: Unknown command: aliasbefore
|
||||
par_env_parallel_--session_fish script (line 6):
|
||||
par_env_parallel_--session_fish aliasbefore must_fail
|
||||
par_env_parallel_--session_fish
|
||||
par_env_parallel_--session_fish fish: Unknown command: funcbefore
|
||||
par_env_parallel_--session_fish fish:
|
||||
par_env_parallel_--session_fish funcbefore must_fail
|
||||
par_env_parallel_--session_fish
|
||||
par_env_parallel_--session_fish fish: Unknown command: funcbefore
|
||||
par_env_parallel_--session_fish script (line 6):
|
||||
par_env_parallel_--session_fish funcbefore must_fail
|
||||
par_env_parallel_--session_fish
|
||||
par_env_parallel_--session_fish no_before
|
||||
par_env_parallel_--session_fish no_before
|
||||
par_env_parallel_--session_fish no_before
|
||||
par_env_parallel_--session_fish no_before
|
||||
par_env_parallel_--session_fish after aliasafter_OK
|
||||
par_env_parallel_--session_fish after aliasafter_OK
|
||||
par_env_parallel_--session_fish after funcafter_OK
|
||||
par_env_parallel_--session_fish after funcafter_OK
|
||||
par_env_parallel_--session_fish after varafter_OK
|
||||
par_env_parallel_--session_fish after varafter_OK
|
||||
par_env_parallel_--session_fish array after arrayafter_OK
|
||||
par_env_parallel_--session_fish array after arrayafter_OK
|
||||
par_env_parallel_fish bug #50435: Remote fifo broke in 20150522
|
||||
par_env_parallel_fish data from stdin
|
||||
par_env_parallel_fish OK
|
||||
par_env_parallel_fish data from stdin
|
||||
par_env_parallel_fish OK
|
||||
par_env_parallel_fish OK: 0==0
|
||||
par_env_parallel_fish ### Test failing command with --cat
|
||||
par_env_parallel_fish data from stdin
|
||||
par_env_parallel_fish OK: 1==1
|
||||
par_env_parallel_fish data from stdin
|
||||
par_env_parallel_fish OK: 1==1
|
||||
par_funky_fish env_parallel: Warning: ASCII value 1 in variables is not supported
|
||||
par_funky_fish 3 arg alias_works
|
||||
par_funky_fish env_parallel: Warning: ASCII value 1 in variables is not supported
|
||||
par_funky_fish function_works
|
||||
par_funky_fish myvar works
|
||||
par_funky_fish myenvvar works
|
||||
par_funky_fish space 6
|
||||
par_funky_fish
|
||||
par_funky_fish
|
||||
par_funky_fish
|
||||
par_funky_fish Funky-
par_funky_fish !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€亗儎厗噲墛媽崕彁憭摂晼棙櫄洔潪煚、¥ウЖ┆<D096><E29486><EFBFBD>辈炒刀犯购患骄坷谅媚牌侨墒颂臀闲岩釉罩棕仝圮蒉哙徕沅彐玷殛腱眍镳耱篝貊鼬<E8B28A><E9BCAC><EFBFBD><EFBFBD>-funky
|
||||
par_funky_fish Funkyenv-
par_funky_fish !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€亗儎厗噲墛媽崕彁憭摂晼棙櫄洔潪煚、¥ウЖ┆<D096><E29486><EFBFBD>辈炒刀犯购患骄坷谅媚牌侨墒颂臀闲岩釉罩棕仝圮蒉哙徕沅彐玷殛腱眍镳耱篝貊鼬<E8B28A><E9BCAC><EFBFBD><EFBFBD>-funkyenv
|
||||
par_funky_fish
|
||||
par_funky_fish
|
||||
par_funky_fish
|
||||
par_funky_fish env_parallel: Warning: ASCII value 1 in variables is not supported
|
||||
par_funky_fish 3 arg alias_works_over_ssh
|
||||
par_funky_fish env_parallel: Warning: ASCII value 1 in variables is not supported
|
||||
par_funky_fish function_works_over_ssh
|
||||
par_funky_fish myvar works
|
||||
par_funky_fish myenvvar works
|
||||
par_funky_fish space 6
|
||||
par_funky_fish
|
||||
par_funky_fish
|
||||
par_funky_fish
|
||||
par_funky_fish Funky-
par_funky_fish !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€亗儎厗噲墛媽崕彁憭摂晼棙櫄洔潪煚、¥ウЖ┆<D096><E29486><EFBFBD>辈炒刀犯购患骄坷谅媚牌侨墒颂臀闲岩釉罩棕仝圮蒉哙徕沅彐玷殛腱眍镳耱篝貊鼬<E8B28A><E9BCAC><EFBFBD><EFBFBD>-funky
|
||||
par_funky_fish Funkyenv-
par_funky_fish !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€亗儎厗噲墛媽崕彁憭摂晼棙櫄洔潪煚、¥ウЖ┆<D096><E29486><EFBFBD>辈炒刀犯购患骄坷谅媚牌侨墒颂臀闲岩釉罩棕仝圮蒉哙徕沅彐玷殛腱眍镳耱篝貊鼬<E8B28A><E9BCAC><EFBFBD><EFBFBD>-funkyenv
|
||||
par_funky_fish
|
||||
par_funky_fish
|
||||
par_funky_fish
|
||||
par_funky_fish
|
||||
par_funky_fish '
par_funky_fish !"#$%&'"'"'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€亗儎厗噲墛媽崕彁憭摂晼棙櫄洔潪煚、¥ウЖ┆<D096><E29486><EFBFBD>辈炒刀犯购患骄坷谅媚牌侨墒颂臀闲岩釉罩棕仝圮蒉哙徕沅彐玷殛腱眍镳耱篝貊鼬<E8B28A><E9BCAC><EFBFBD><EFBFBD>'
|
|
@ -1061,19 +1061,16 @@ cat: num_%header: No such file or directory
|
|||
/usr/bin/bash: line 2: foo: command not found
|
||||
#!/usr/bin/perl
|
||||
print "@ARGV\n"
|
||||
Warning: unknown mime-type for "@ARGV\n" -- using "application/octet-stream"
|
||||
Error: no such file "@ARGV\n"
|
||||
parallel perl_echo ::: foo bar
|
||||
/usr/bin/bash: line 1: perl_echo: command not found
|
||||
#!/usr/bin/parallel --shebang-wrap /usr/bin/perl
|
||||
print "@ARGV\n"
|
||||
Warning: unknown mime-type for "@ARGV\n" -- using "application/octet-stream"
|
||||
Error: no such file "@ARGV\n"
|
||||
perl_echo foo bar
|
||||
/usr/bin/bash: line 1: perl_echo: command not found
|
||||
#!/usr/bin/parallel --shebang-wrap /usr/bin/perl
|
||||
print "Arguments @ARGV\n";
|
||||
Warning: unknown mime-type for "Arguments @ARGV\n" -- using "application/octet-stream"
|
||||
Error: no such file "Arguments @ARGV\n"
|
||||
#!/usr/bin/parallel --shebang-wrap /usr/bin/python
|
||||
print 'Arguments', str(sys.argv)
|
||||
|
@ -1094,7 +1091,6 @@ Arguments
|
|||
#!/usr/bin/parallel --shebang-wrap /usr/bin/ruby
|
||||
print "Arguments "
|
||||
puts ARGV
|
||||
Warning: unknown mime-type for "Arguments " -- using "application/octet-stream"
|
||||
Error: no such file "Arguments "
|
||||
/usr/bin/bash: line 4: puts: command not found
|
||||
#!/usr/bin/parallel --shebang-wrap /usr/bin/octave
|
||||
|
|
|
@ -13,8 +13,8 @@ par__noheaders def 3
|
|||
par__noheaders abc 1
|
||||
par__noheaders def 3
|
||||
par__tablesize ### Test --table-size --tablesize
|
||||
par__tablesize 93
|
||||
par__tablesize 93
|
||||
par__tablesize 94
|
||||
par__tablesize 94
|
||||
par_dburl_user_password_host_port ### Test dburl with username password host port
|
||||
par_dburl_user_password_host_port Test dburl with username password host port
|
||||
par_dburl_user_password_host_port OK
|
||||
|
|
|
@ -100,7 +100,7 @@ par_sqlite bytes
|
|||
par_sqlite 3072
|
||||
par_sqlite Current command: sqlite3
|
||||
par_sqlite foo
|
||||
par_sqlite sqltest.sqlite3: SQLite 3.x database, last written using SQLite version 3045001, file counter 1, database pages 2, cookie 0x1, schema 4, UTF-8, version-valid-for 1
|
||||
par_sqlite sqltest.sqlite3: SQLite 3.x database, last written using SQLite, file counter 1, database pages 2, cookie 0x1, schema 4, UTF-8, version-valid-for 1
|
||||
par_sqlite n|t
|
||||
par_sqlite 1|Line 1
|
||||
par_sqlite 2|Line 2
|
||||
|
|
Loading…
Reference in a new issue