Passes testsuite.

This commit is contained in:
Ole Tange 2011-01-27 22:56:59 +01:00
parent f63347b070
commit cb468fb6d3
3 changed files with 36 additions and 27 deletions

View file

@ -160,11 +160,11 @@ New in this release:
approximate. It can deviate as much as the size of one record.
Default is 1M.
* --recstart sets the regular expression matching the start of a
* --recstart sets the string matching the start of a
record. Default is "".
* --recend sets the regular expression matching the end of a
record. Default is "\n". To specify none use --recend "".
* --recend sets the string matching the end of a
record. Default is '\n'. To specify none use --recend "".
If both --recstart and --recend are set, the end of a record must be
followed immediately by a start of a record. This is useful if
@ -175,8 +175,10 @@ New in this release:
these files.
* -N set the number of records to read. If used with --blocksize
the block read will at most be --blocksize. -N is much slower
than --blocksize so avoid -N if performance is important.
the block read will at most be --blocksize.
* GNU Parallel is now on ohloh.net. Thanks to Wim Muskee.
https://www.ohloh.net/p/gnu-parallel
* Advanced recursive example. Thanks to Ruarí Ødegaard.
http://my.opera.com/ruario/blog/2011/01/24/editing-debian-packages-more-fun-with-gnu
@ -186,17 +188,18 @@ New in this release:
= About GNU Parallel =
GNU Parallel is a shell tool for executing jobs in parallel using one
or more computers. A job is typically a single command or a small
script that has to be run for each of the lines in the input. The
typical input is a list of files, a list of hosts, a list of users, a
list of URLs, or a list of tables.
or more computers. A job is can be a single command or a small script
that has to be run for each of the lines in the input. The typical
input is a list of files, a list of hosts, a list of users, a list of
URLs, or a list of tables. A job can also be a command that reads from
a pipe. GNU Parallel can then split the input and pipe it into
commands in parallel.
If you use xargs today you will find GNU Parallel very easy to use as
GNU Parallel is written to have the same options as xargs. If you
write loops in shell, you will find GNU Parallel may be able to
If you use xargs and tee today you will find GNU Parallel very easy to
use as GNU Parallel is written to have the same options as xargs. If
you write loops in shell, you will find GNU Parallel may be able to
replace most of the loops and make them run faster by running several
jobs in parallel. If you use ppss or pexec you will find GNU Parallel
will often make the command easier to read.
jobs in parallel.
GNU Parallel makes sure output from the commands is the same output as
you would get had you run the commands sequentially. This makes it

View file

@ -572,10 +572,10 @@ of each job is saved in a file and the filename is then printed.
Spread input to jobs on stdin. Read a block of data from stdin
(standard input) and give one block of data as input to one job.
The block size is determined by B<--block>. The regular expressions
B<--recstart> and B<--recend> tell GNU B<parallel> how a record starts
and/or ends. The block read will have the final partial record removed
before the block is passed on to the job. The partial record will be
The block size is determined by B<--block>. The strings B<--recstart>
and B<--recend> tell GNU B<parallel> how a record starts and/or
ends. The block read will have the final partial record removed before
the block is passed on to the job. The partial record will be
prepended to next block.
If B<--recstart> is given this will be used to split at record start.
@ -588,8 +588,7 @@ match to find a split position.
If neither B<--recstart> nor B<--recend> are given B<--recend>
defaults to '\n'. To have no record separator use B<--recend "">.
If B<--output-as-files> is set the output will not be the output of
the jobs but a list of files containing the output of the jobs run.
B<--files> is often used with B<--pipe>.
=item B<--progress>
@ -705,15 +704,15 @@ default.
If the stdin (standard input) only contains whitespace, do not run the command.
=item B<--recstart> I<startregexp> (beta testing)
=item B<--recstart> I<startstring> (beta testing)
=item B<--recend> I<endregexp> (beta testing)
=item B<--recend> I<endstring> (beta testing)
If B<--recstart> is given I<startregexp> will be used to split at record start.
If B<--recstart> is given I<startstring> will be used to split at record start.
If B<--recend> is given I<endregexp> will be used to split at record end.
If B<--recend> is given I<endstring> will be used to split at record end.
If both B<--recstart> and B<--recend> are given the regular expression
If both B<--recstart> and B<--recend> are given the string
I<startregexp>I<endregexp> will have to match to find a split
position. This is useful if either I<startregexp> or I<endregexp>
match in the middle of a record.
@ -723,6 +722,15 @@ defaults to '\n'. To have no record separator use B<--recend "">.
B<--recstart> and B<--recend> are used with B<--pipe>.
Use B<--regexp> to interpret B<--recstart> and B<--recend> as regular
expressions. This is slow, however.
=item B<--regexp> (unimplimented)
Use B<--regexp> to interpret B<--recstart> and B<--recend> as regular
expressions. This is slow, however.
=item B<--remove-rec-sep> (alpha testing)

View file

@ -99,8 +99,6 @@ jjjjjjjjjj
303111434
303111434
303111434
0
0
### Test --rrs -N1 --recend single
1>12
2>34