TRUNCATE(1)

名称
truncate - ファイル長を切り詰めたり拡張したりする

書式
truncate [-c] -s [+|-] size [K|M|G] file ... truncate [-c] -r rfile file ...

解説
truncate ユーティリティは、コマンド行で与えられた通常ファイルそれぞれの 長さを調整します。

次のオプションが使用できます:

-c  ファイルが存在していなければ、ファイルを作成しません。 truncate ユーティリティは、ファイルが存在しないときでも エラーとはみなしません。 何のエラーメッセージも出力しませんし、終了ステータス値にも 影響がありません。

-r rfile
    rfile ファイルと同じ長さに切り詰めます。

-s  [+|-] size [K|M|G] size 引数がプラス符号 (+) で始まる場合には、ファイル長はこのバイト数だけ拡張されます。 size 引数がダッシュ (-) で始まる場合には、ファイル長は最大このバイト数だけ切り詰められます。 最小ファイル長は 0 バイトです。 これら以外の場合、 size 引数は、ファイルの絶対長を指定します。すべての ファイルがこの絶対長になるよう、適切に拡張されたり切り詰められたりします。

    size 引数には、後ろに K, M, G のうちどれか 1 つをつけることができ、それぞれ、 キロバイト、メガバイト、ギガバイト倍を示します。

-r および -s オプションのいずれかを必ず指定しなくてはなりません。

ファイルが小さくなる場合、はみ出した分のデータは失われます。 ファイルが大きくなる場合、 値 0 のデータを書いたかのように拡張されます。 ファイルが存在しない場合、 -c オプションが設定されていなければファイルを作成します。

ファイルを切り詰めるという操作ではディスクスペースは開放されますが、 ファイルを拡張するという操作ではスペースは割り当てられません。 ファイルを拡張し、実際にスペースを割り当てるためには、 (例えば) シェルの ‘>>’ リダイレクションや dd を使用して明示的にファイルにデータを書き出してやる必要があります。

診断
引数に対する操作が失敗したときには、 truncate は診断メッセージを出し、残りの引数の処理を続けます。

関連項目
dd(1), touch(1), truncate(2)

規格
truncate ユーティリティは、周知の規格に従ったものではありません。

歴史
truncate ユーティリティは、 FreeBSD 4.2 で初めて登場しました。

作者
truncate ユーティリティは Sheldon Hearn <sheldonh@starjuice.net> が書きました。