SHRINKFILE(1)

名前
shrinkfile - 行単位でのファイルの切り詰め

形式
shrinkfile [ -n ] [ -m maxsize ] [ -s size ] [ -v ] file...

機能説明
shrinkfile はファイルが maxsize より大きい場合、ファイルのデータの後ろの部分を残して size で指定した大きさに切り詰めます。 ファイルの切り詰めは行単位で行われます。 行とは改行(\n)で終わっているバイト列です。 一行の長さに制限は無く、ファイルにバイナリデータが含まれていても構いません。

テンポラリファイルは /var/tmp ディレクトリに作成されます。 別のディレクトリを指定するために環境変数 ``TMPDIR'' を使用することができます。

改行で終了していない空でないファイルには改行が追加されます。 この追加によってファイルの最大値を越えることはありません。

オプション

-s  デフォルトでは、 size は 0 としていて、ファイルは 0 バイトに切り詰められます。 デフォルトでは、 maxsize は size と同じです。 maxsize が size より小さければ、 maxsize は size に設定されます。 ``-s'' オプションを使用すると、切り詰める大きさを変更することができます。 行単位でのみ切り詰めるため、最終的な大きさは指定した大きさより小さくなるかもしれません。 size と maxsize パラメータでは、最後に ``k''、``m'' あるいは ``g'' を付けることができて、それぞれ、 キロバイト(1024)、メガバイト(1048576) あるいはギガバイト(1073741824)の単位になります。 大文字を使用することもできます。 ファイルの大きさの最大は 2147483647 バイトです。

-v  ``-v'' オプションを使用すると、 shrinkfile はファイルを切り詰めるとその情報を出力します。

-n  ``-n'' オプションを使用すると、ファイルが maxsize より大きければ、 shrinkfile は終了ステータス 0 で終了し、そうでなければ 1 で終了します。 ファイルはそのままとなります。

使用例

使用例

    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

履歴
InterNetNews 用に Landon Curt Noll <chongo@toad.com> と Rich $alz <rsalz@uunet.uu.net> により記述されました。