zzat1
Concatenate files using different instruction sequences
Usage
zzat [-AbdeEntTv]
[-r
loops]
[-x
sequence]
[FILE] ...
zzat {-l | --list}
zzat {-h | --help}
zzat {-V | --version}
Overview
The zzat utility reads files sequentially, writing them to the standard output. The user can decide which sequence of library calls is used to seek and read data.
zzat is primarily used as a debugging tool for zzuf, because it can emulate different programs' ways to read files.
Options
-
-A, --show-all -
Equivalent to
-vET.
-
-b, --number-nonblank -
Number nonempty output lines.
-
-d, --debug -
Output debugging information.
-
-e -
Equivalent to
-vET.
-
-E, --show-ends -
Display $ at end of each line.
-
-n, --number -
Number all output lines.
-
-r, --repeat=loops -
Concatenate all files loops times.
-
-t -
Equivalent to
-vT.
-
-T, --show-tabs -
Display TAB characters as ^I.
-
-v, --show-nonprinting -
Use ^ and M- notation, except for LFD and TAB.
-
-x, --execute=sequence -
Read a file or a stream using the instruction sequence specified in sequence.
Instructions are executed sequentially until the end of the program. End-of-file is not an exit condition, except where the
feofkeyword is used:fread(1,10); feof(1); fread(1,10)
Loops are permitted using the
repeatkeyword. Again,feofcan be used to prematurely break out of a loop:repeat(10000, fgetc() feof(1))
Instructions can be separated by spaces, commas or semicolons. A list of all available instructions and control keywords can be obtained using this command:
zzat -l
If no sequence is specified, the following default sequence is used:
repeat(-1, fread(1,32768), feof(1))
-
-l, --list -
Display the list of supported keywords and functions and exit.
-
-h, --help -
Display a short help message and exit.
-
-V, --version -
Output version information and exit.
Examples
Read the first 1000 bytes of f, then exit:
zzat -x 'fread(1,1000)' f
Read the first four bytes of f, using four different instructions:
zzat -x 'getc(),fgetc(),getc_unlocked(),_IO_getc()' f
Read f entirely, by calling getc() repeatedly until end-of-file is reached:
zzat -x 'repeat(-1, getc(), feof(1))' f
Read f entirely, in chunks of 32768 bytes until end-of-file is reached:
zzat -x 'repeat(-1, fread(1,32768), feof(1))' f
Releases
9 releases since Debian 6.0 (Squeeze); the text changed 1 time.