The
shrinkfile
program shrinks files to a given
size
if the size is larger than
maxsize,
preserving the data at the end of the file.
Truncation is performed on line boundaries, where a line is a series
of bytes ending with a newline, \n.
There is no line length restriction and files may contain any binary data.
Temporary files are created in the
<pathtmp in inn.conf>
directory.
The ``TMPDIR'' environment variable may be used to specify a
different directory.
A newline will be added to any non-empty file that does not end with a newline.
The maximum file size will not be exceeded by this addition.
OPTIONS
-s
By default,
size
is assume to be zero and files are truncated to zero bytes.
By default,
maxsize
is the same as
size.
If
maxsize
is less than
size,
maxsize
is reset to
size.
The ``-s'' flag may be used to change the truncation size.
Because the program truncates only on line boundaries, the final size
may be smaller then the specified truncation size.
The
size
and
maxsize
parameter may end with a ``k'', ``m'', or ``g'', indicating
kilobyte (1024), megabyte (1048576) or gigabyte (1073741824) lengths.
Uppercase letters are also allowed.
The maximum file size is 2147483647 bytes.
-v
If the ``-v'' flag is used, then
shrinkfile
will print a status line if a file was shrunk.
-n
If the ``-n'' flag is used, then
shrinkfile
will exit 0 if any file is larger than
maxsize
and exit 1 otherwise.
No files will be altered.
EXAMPLES
Example usage:
shrinkfile -s 4m curds
shrinkfile -s 1g -v whey
shrinkfile -s 500k -m 4m -v curds whey
if shrinkfile -n -s 100m whey; then echo whey is way too big; fi