col コマンド
目的
標準出力用に、逆方向の改行と正方向/逆方向の半改行を持つ、 標準出力用テキストのフィルター操作を行います。
構文
説明
col コマンドは、テキスト・ファイルを標準入力から読み取って標準出力に書き出します。 このコマンドは、flr コマンド (逆方向改行) だけでなく、hlf および hlr コマンド (それぞれ正方向半改行と逆方向半改行) によって指示された行オーバーレイを実行します。 nterm ファイル・フォーマット資料には、これらの改行コマンドについての説明があります。 col コマンドは、nroff コマンド、.rt 要求および tbl コマンドからの出力を使って作成された複数欄の出力にフィルター操作を行うために使用されます。
逆方向の改行動作を扱うことができないデバイス (ほとんどのインパクト・プリンターなど) について、col コマンドを nroff バックエンド・フィルターとして使用します。 tbl コマンド、neqn コマンド、または明示的な逆方向動作要求ファイル (例えば .sp -10V ファイルなど) からの出力、または 2 つの欄に出力するファイルなどは、出力が正しく行われるように、col コマンドで処理しなければなりません。 以下のデバイスに書き出す nroff 出力は、col コマンドを使って処理しないでください。
- hplj (hplj)
- ibm4019
- ibm5577
- ibm5575
-x フラグを指定しない限り、col コマンドは、可能な場合は常に、印刷時間を短縮するためにホワイト・スペースをタブに変換します。
col コマンドを -T37 ファイルで使用すると、代替文字セットでは、ASCII 制御文字 SO (¥017) および SI (¥016) がテキストの開始文字および終了文字と見なされます。 col コマンドは、各入力文字が属する文字セットを記憶していて、出力時に、それぞれの文字が正しい文字セットで確実に出力されるように、適切な SI 文字および SO 文字を生成します。
入力時に col コマンドが受け入れるのは、スペース、バックスペース文字、タブ、Return キー用の各制御文字、改行文字、SI および SO (-T37 ファイルの場合)、VT 制御文字、逆方向改行文字、正方向半改行文字、および逆方向半改行文字だけです。 VT 制御文字 (¥013) は逆方向 全改行の代替フォーマットで、このタイプの初期のプログラムとの互換性が保たれています。 col コマンドは、その他の非出力文字はすべて無視します。
通常、col コマンドは、入力の中で検出された認識不能なエスケープ・シーケンスをすべて無視します。 ただし、逆方向改行動作のために上書き印刷が起こることもあるので、col コマンドがこうしたシーケンスを通常文字として出力できるように、-p オプションを使うことができます。 エスケープ・シーケンスのテキスト上の位置を完全に把握していなければ、このオプションを使うことは禁物です。
注:
- 出力が半行動作を解釈できる装置に送信される場合は、次のように入力します。
半改行を解釈できないデバイスの場合は、例えば、 以下のように入力します。nroff -Tppds File... | col -f -Tppdsnroff -Tlp File... | col -Tlp- 逆改行できる最大行数は 128 行です。
- 1 行に認められる文字数は、バックスペース文字も含めて 800 文字までです。
- 1 行目に逆送りされるローカル垂直動作は無視されます。 したがって、1 行目にはどんな上付き文字も含めることはできません。
フラグ
| 項目 | 説明 |
|---|---|
| -b | 使用中の出力デバイスにバックスペース文字機能がないものと想定します。 このとき、2 文字以上が同じ位置に表示されることになると、出力には最後に読み取られた文字が表示されます。 |
| -f | 入力の中の半行動作のデフォルトの処理を抑制します。 通常 col コマンドは、入力の中で半行動作を受け入れても、出力に半行動作を行うことはありません。 このフラグを使うと、出力中に正方向半改行 (hlf) は含まれますが、逆方向改行 (flr および hlr) は含まれません。 |
| -p | 逆方向改行動作による過剰出力の発生を仮定して、未知のエスケープ・シーケンスを文字として表示します。 通常 col コマンドはエスケープ・シーケンスを無視します。 |
| -x | タブをホワイト・スペースに変換します。 |
| -T名前 | Name 変数で指定したワークステーション仕様を使用します。 「タイプライター型のデバイスおよびライン・プリンターの端末名」の Name 変数については、 nroff コマンド -T Name フラグで説明しています。 デフォルトは 37です。 |
| -l 番号 | (小文字の L) 指定された行数のテキストを、処理中にメモリーからバッファーに送信します。 |
終了状況
次のような終了値が戻されます。
| 項目 | 説明 |
|---|---|
| 0 | 正常終了したことを示します。 |
| >0 | これは、エラーが発生したことを示しています。 |