shrinkfile - shrink a file on a line boundary
shrinkfile [ -n ] [ -m maxsize ] [ -s size ] [ -v ] file...
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. Trun-
cation is performed on line boundaries, where a line is a series of
bytes ending with a newline, ‘‘\n’’. There is no line length restric-
tion 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
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.
-s By default, size is assumed 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 max-
size 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
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
Written by Landon Curt Noll <firstname.lastname@example.org> and Rich $alz
<email@example.com> for InterNetNews.
Man(1) output converted with