From 862e41c8a40e85f473331d12e450f3623e9df3bb Mon Sep 17 00:00:00 2001 From: Ole Tange Date: Sun, 4 May 2014 00:42:52 +0200 Subject: [PATCH] parallel: --recend --recstart '\0' fixed. --- doc/release_new_version | 50 ++++------------------ src/parallel | 4 +- testsuite/tests-to-run/parallel-local23.sh | 4 ++ testsuite/wanted-results/parallel-local23 | 7 +++ 4 files changed, 22 insertions(+), 43 deletions(-) diff --git a/doc/release_new_version b/doc/release_new_version index 8f81379c..e899c3ea 100644 --- a/doc/release_new_version +++ b/doc/release_new_version @@ -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 , Ryoichiro Suzuki , Jesse Alama -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 = diff --git a/src/parallel b/src/parallel index 5473ca79..5ad36c4f 100755 --- a/src/parallel +++ b/src/parallel @@ -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); } diff --git a/testsuite/tests-to-run/parallel-local23.sh b/testsuite/tests-to-run/parallel-local23.sh index ddc4bb4f..848d78ca 100755 --- a/testsuite/tests-to-run/parallel-local23.sh +++ b/testsuite/tests-to-run/parallel-local23.sh @@ -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_{/}; diff --git a/testsuite/wanted-results/parallel-local23 b/testsuite/wanted-results/parallel-local23 index 62093cc1..25a7bb62 100644 --- a/testsuite/wanted-results/parallel-local23 +++ b/testsuite/wanted-results/parallel-local23 @@ -1,3 +1,10 @@ +### Test \0 as recend +a^@ +b^@ +c^@ +^@a +^@b +^@c ### Test filenames containing UTF-8 . ./1-col.txt