PASTE(1)

名称
paste - ファイルの対応する行または引き続く行を併合する

書式
paste [-s] [-d list] file ...

解説
paste ユーティリティは、与えられた入力ファイルの対応する行の結合を、 最後のファイル以外の改行文字を一つのタブ文字に置き換えながら行い、 その結果の行を標準出力に書き出します。 入力ファイルの一つが EOF (ファイルの終り) に達した場合、 他のファイルの終了までそのファイルは空行が有るかのように 扱われます。

以下のようなオプションがあります。

-d list
    デフォルトのタブの代わりに改行文字を置換するための文字として使います。 list 中の文字は巡回するように使われます。つまり、 list の文字が終った時には最初の文字が再び使われます。 これは、(デフォルトの操作では) 最後の入力ファイルからの行まで、もしくは ( -s オプション使用時には) 各ファイルの最後の行が表示されるまで続きます。 最後の行を表示したところで、 paste は、選択された文字の最初から操作を行います。

    以下の特殊文字を記述可能です。

    \n  改行文字
    \t  タブ文字
    \\  バックスラッシュ文字
    \0  空文字列 (ヌル文字ではありません)

    上記以外の文字は、バックスラッシュ付きの場合その文字自身を表現します。

-s  別個の入力ファイルの全行の結合を、コマンドラインに並んだ順に行います。 入力ファイル中の、最後の行以外の全ての行の改行文字は、 -d オプションが 指定されていない場合は、タブ文字で置き換えられます。

‘-’ が、1 つ以上の入力ファイルに指定された場合、標準入力が使われます。 標準入力は、一度に一行読み込まれ、巡回的に ‘-’ の各実体として使われます。

使用例
カレントディレクトリのファイルを 3 コラムで表示します:

    ls | paste - - -

ファイル中の行の組を単一行に組み合わせます。

    paste -s -d '\t\n' myfile

ファイル中の行に番号を付けます。 nl(1) と似ています:

    sed = myfile | paste -s -d '\t\n' - -

bin という名前のディレクトリをコロンで区切ってリストします。 PATH 環境変数で使用するのに適しています:

    find / -name bin -type d | paste -s -d : -

診断

関連項目
cut(1), lam(1)

規格
paste ユーティリティは、 p1003.2 互換であることが期待されています。

歴史
paste コマンドは AT&T UNIX から登場しました。

バグ
マルチバイト文字のデリミタは -d オプションで指定できません。