Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ paste(1V) — NEWS-os 4.2.1R

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

cut(1V)

grep(1)

pr(1)

PASTE(1V)  —  NEWS-OS Programmer’s Manual

名称

paste − 複数のファイルの対応する行 または 1 つのファイル の連続する行のマージ

形式

paste file1 file2 ...
paste −dlist file1 file2 ...
paste −s [ −dlist ] file1 file2 ...

解説

最初の 2 例では、 paste は指定された入力ファイル file1、file2 などの対応する行を連結します。 各ファイルはテーブルの 1 つのカラムまたは複数のカラムとして扱われ、 水平に連結されます(並列マージ)。 つまりは、垂直に連結する(ファイルを別のファイルの後に連結する) cat(1) コマンドと対をなします。 最後の例では、 paste は入力ファイルの連続する行を結合することで、 同名の古いコマンドの機能を置き換えます(逐次マージ)。 全ての場合、各行はタブまたはオプションで指定した リストからの文字が付加されます。 出力は標準出力へ行われるので、パイプの先頭に使用できます。 また、ファイル名の代わりに − を使用すると、フィルタとして使用できます。

−d 省略した場合、最後のファイルを除く各ファイルの改行文字 (−s オプション指定時の最終行)はタブに置き換えられます。 このオプションによって タブを 1 つ以上の代替文字(下記参照)に置き換えることができます。

list −d の直後の 1 つ以上の文字は、 デフォルトのタブに代って行連結文字となります。 そのリストは循環的に使われます。 つまり、最後の文字まで使ったときには、再度先頭から使用されます。 並列マージ(すなわち −s オプション省略時)では、最終ファイルの各行は list の文字ではなく、改行で終わります。 リストには次のような特殊エスケープシーケンスも使用できます: \n (改行)、 \t (タブ)、 \\ (バックスラッシュ)、および \0 (空文字列、ナル文字ではない)。 文字がシェルに対して特別の意味を持つ場合、 引用符が必要になります(例えば、 バックスラッシュの場合には −d"\\" を使用)。

−s 各入力ファイルから一行ずつマージする代わりに、連続行をマージします。 −d オプションで list を指定しない場合、タブで連結します。 list の内容にかかわらず、ファイルの最終文字は強制的に改行とされます。

− 標準入力から行を読み込むために、ファイル名の代りとして使用します。 (プロンプトは無し)

使用例

ls │ paste −d" " − 1 カラムにディレクトリを出力。

ls │ paste − − − − 4 カラムにディレクトリを出力。

paste −s −d \t\n" file 2 行ずつ連結。

関連事項

cut(1V), grep(1), pr(1). 

自己診断

line too long
各出力行は 1023 文字に制限されています。

too many files
−s オプションを指定した場合を除いて、 13 以上の入力ファイルを指定することはできません。

NEWS-OSRelease 4.2.1R

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026