マニュアルページセク ション 1: ユーザーコマンド

印刷ビューの終了

更新: 2014 年 7 月
 
 

fold(1)

名前

fold - 行の折り返し用フィルタ

形式

fold [-bs] [-w width | -width] [file]...

説明

fold ユーティリティーは、入力ファイルから読み込んだ各行を、行の最大長が width で示すカラム位置 (–b オプション指定時はバイト数) になるように分割して複数行に表示するフィルタです。各出力行 (このセクションでは以降、セグメントと呼ぶ) が指定されたカラム位置 (またはバイト数) を超えない最大長になるように、NEWLINE 文字を挿入して行が分割されます。行が文字の途中で分割されることはありません。入力中の 1 つの文字が占有するカラム数より小さい値を width に指定した場合、その結果は予測できません。

入力中に CARRIAGE-RETURN、BACKSPACE、または TAB 文字が検出され、–b オプションが指定されていない場合、特殊な処理が行われます。

BACKSPACE

現在の行の幅の数が 1 だけ減らされます。ただし負になることはありません。fold は、BACKSPACE 文字の直前や直後に NEWLINE 文字を挿入することはありません。

CARRIAGE-RETURN

現在の行の幅の数が 0 に設定されます。fold は、CARRIAGE-RETURN 文字の直前や直後に NEWLINE 文字を挿入することはありません。

TAB

検出された各 TAB 文字は、カラム位置ポインタを次のタブストップへ進めます。タブストップは、各カラム位置 n (n は 8 で割った剰余が 1 に等しくなる数) にあります。

オプション

サポートしているオプションは、次のとおりです。

–b

width の値はカラム数ではなくバイト数で示されていることを指定します。

–s

入力行に空白文字が含まれている場合、 出力セグメントの長さが width カラムまたはバイトを超えない範囲で、最後の空白文字の直後で 行を分割します。要件を満たす空白文字が存在しなければ、–s オプションは入力行のその出力セグメントに対して効果がありません。

–w width|–width

出力セグメントの最大長をカラム数 (–b 指定時はバイト数) で指定します。width の値が正の整数でないと、エラーが発生します。デフォルトの値は 80 です。

オペランド

次のオペランドを指定できます。

file

行の折り返しを行うテキストファイルのパス名。file オペランドを指定しないと、標準入力が使用されます。

環境変数

fold の実行に影響を与える次の環境変数についての詳細は、environ(5) を参照してください。LANG、LC_ALL、LC_CTYPE、LC_MESSAGES、および NLSPATH。

終了ステータス

次の終了ステータスが返されます。

0

指定されたファイルはすべて正常に処理されました。

>0

エラーが発生した。

属性

属性についての詳細は、マニュアルページの attributes(5) を参照してください。

属性タイプ
属性値
使用条件
system/core-os
CSI
有効
インタフェースの安定性
確実
標準
standards(5) を参照してください。

関連項目

cut(1), pr(1), attributes(5), environ(5), standards(5)

注

fold と cut(1) は、どちらも長い行を持つファイルから新たなテキストファイルを 生成する目的で使われます。fold は行の内容を連続させるべき場合に使用するのに対して、cut は行 (またはレコード) の数を一定にしておく場合に使用します。

fold は、最大印刷幅 (通常は 80 または 132 カラム) を超える行は切り捨ててしまうような プリンタにテキストファイルを出力させるためによく使われます。

下線が存在する場合には、fold は正しく動作しないことがあります。