parallel: --recend --recstart '\0' fixed.

This commit is contained in:
Ole Tange 2014-05-04 00:42:52 +02:00
parent d36cb5a2dd
commit 862e41c8a4
4 changed files with 22 additions and 43 deletions

View file

@ -166,9 +166,10 @@ git tag -s -m "Released as $YYYYMMDD ('$TAG')" $YYYYMMDD
== Update Savannah ==
file:///home/tange/privat/parallel/doc/release_new_version
Content from release mail:
cat doc/release_new_version | klipper-stdin
https://savannah.gnu.org/news/submit.php?group=parallel
https://savannah.gnu.org/news/approve.php?group=parallel
@ -213,57 +214,24 @@ cc:Tim Cuthbertson <tim3d.junk@gmail.com>,
Ryoichiro Suzuki <ryoichiro.suzuki@gmail.com>,
Jesse Alama <jesse.alama@gmail.com>
Subject: GNU Parallel 20140422 ('세월호') released
Subject: GNU Parallel 20140522 ('Nej') released
GNU Parallel 20140422 ('세월호') has been released. It is available for download at: http://ftp.gnu.org/gnu/parallel/
GNU Parallel 20140522 ('Nej') has been released. It is available for download at: http://ftp.gnu.org/gnu/parallel/
New in this release:
* --pipepart is a highly efficient alternative to --pipe if the input is a real file and not a pipe.
* GNU Parallel officially in Solaris 11.2beta https://blogs.oracle.com/alanc/entry/solaris_11_2_changes_to
* If using --cat or --fifo with --pipe the {} in the command will be replaced with the name of a physical file and a fifo respectively containing the block from --pipe. Useful for commands that cannot read from standard input (stdin).
* Using GNU Parallel on a PBS cluster (nice use of --shebang-wrap) https://docs.it4i.cz/anselm-cluster-documentation/resource-allocation-and-job-execution/capacity-computing
* --controlmaster has gotten an overhaul and is no longer experimental.
* BioLite uses GNU Parallel: https://bitbucket.org/caseywdunn/biolite
* --env is now copied when determining CPUs on remote system. Useful for copying $PATH if parallel is not in the normal path.
* --results now chops the argument if the argument is longer than the allowed path length.
* Build now survives if pod2* are not installed.
* The git repository now contains tags of releases.
* GNU Parallel was cited in: Proactive System for Digital Forensic Investigation http://dspace.library.uvic.ca:8080/bitstream/handle/1828/5237/Alharbi_Soltan_PhD_2014.pdf
* GNU Parallel was cited in: Beyond MAP estimation with the track-oriented multiple hypothesis tracker http://ieeexplore.ieee.org/xpl/abstractReferences.jsp?tp=&arnumber=6766651&url=http%3A%2F%2Fieeexplore.ieee.org%2Fxpls%2Fabs_all.jsp%3Farnumber%3D6766651
* GNU Parallel was cited in: Prokka: rapid prokaryotic genome annotation http://bioinformatics.oxfordjournals.org/content/early/2014/03/18/bioinformatics.btu153.short
* GNU Parallel was used (unfortunately with improper citation) in: Perspectives in magnetic resonance: NMR in the post-FFT era http://www.sciencedirect.com/science/article/pii/S1090780713003054
* GNU Parallel is used in https://github.com/cc2qe/speedseq
* Batch XML validation at the command line. http://horothesia.blogspot.dk/2014/04/batch-xml-validation-at-command-line.html
* freebayes-parallel uses GNU Parallel https://github.com/ekg/freebayes/commit/31ee997984cebe8a196381c3de57e618e34a2281
* Org-mode with Parallel Babel http://draketo.de/english/emacs/parallel-babel#sec-2
* Speeding Up Grep Log Queries with GNU Parallel http://www.cybersecurity.io/speeding-grep-queries-gnu-parallel/
* How to run tbss_2_reg in parallel http://tadpolebrainimaging.blogspot.dk/2014/03/how-to-run-tbss2reg-in-parallel.html
* GNU parallel example: blastn https://asciinema.org/a/8775
* Iterative DNS Brute Forcing http://www.room362.com/blog/2014/02/19/iterative-dns-brute-forcing/
* Ejecutando comandos en paralelo http://jesusmercado.com/guias/ejecutando-comandos-en-paralelo/
* Ejecutando en paralelo en bash (ejemplo con rsync) http://eithel-inside.blogspot.dk/2014/04/ejecutando-en-paralelo-en-bash-ejemplo.html
* Convert FLAC to MP3 with GNU parallel http://www.blogobramje.nl/posts/Convert_FLAC_to_MP3_with_GNU_parallel/
* Bug fixes and man page updates.
GNU Parallel - For people who live life in the parallel lane.
= About GNU Parallel =

View file

@ -537,8 +537,8 @@ sub recstartrecend {
$recend = "(?:".$recend.")";
} else {
# $recstart/$recend = printf strings (\n)
$recstart =~ s/\\([rnt\'\"\\])/"qq|\\$1|"/gee;
$recend =~ s/\\([rnt\'\"\\])/"qq|\\$1|"/gee;
$recstart =~ s/\\([0rnt\'\"\\])/"qq|\\$1|"/gee;
$recend =~ s/\\([0rnt\'\"\\])/"qq|\\$1|"/gee;
}
return ($recstart,$recend);
}

View file

@ -4,6 +4,10 @@ rm -rf tmp 2>/dev/null
cp -a input-files/testdir2 tmp
cat <<'EOF' | sed -e 's/;$/; /;s/$SERVER1/'$SERVER1'/;s/$SERVER2/'$SERVER2'/' | stdout parallel -j0 -k -L1
echo '### Test \0 as recend';
printf "a\0b\0c\0" | parallel --recend '\0' -k -N1 --pipe cat -v \; echo;
printf "\0a\0b\0c" | parallel --recstart '\0' -k -N1 --pipe cat -v \; echo
echo '### Test filenames containing UTF-8';
cd tmp;
find . -name '*.jpg' | nice nice parallel -j +0 convert -geometry 120 {} {//}/thumb_{/};

View file

@ -1,3 +1,10 @@
### Test \0 as recend
a^@
b^@
c^@
^@a
^@b
^@c
### Test filenames containing UTF-8
.
./1-col.txt