[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
paste
: 複数のファイルの各行をマージするpaste
は、指定された各ファイルの行番号が同じ行を、
タブ文字を間にはさんで連結して、標準出力に書き出す。
入力ファイルが全く指定されていない場合や、ファイル名が ‘-’ だった場合は、
標準入力が使用される。
書式:
paste [option]… [file]… |
たとえば、次のような 2 個のファイルに対して、
$ cat num2 1 2 $ cat let3 a b c |
各ファイルから行を順番に拾う。
$ paste num2 let3 1 a 2 b c |
片方のファイルの行を二回使う。
$ paste num2 let3 num2 1 a 1 2 b 2 c |
標準入力から行を取得して混ぜる。
$ paste - let3 - < num2 1 a 2 b c |
連続する行を、スペースを間にはさんで結合する。
$ seq 4 | paste -d ' ' - - 1 2 3 4 |
このプログラムでは以下のオプションが使用できる。参照: 共通オプション.
各ファイルから 1 行づつ取り出して連結するのではなく、 一つのファイルのすべての行をまとめて 1 行に連結する。 上の例のデータを使用すると、
$ paste -s num2 let3 1 2 a b c |
連結する行の区切りに、タブではなく、delim-list の各文字を順番に使用する。 delim-list を使い切ってしまった場合は、最初の文字に戻って使用して行く。 上記のデータを例に取ると、
$ paste -d '%_' num2 let3 num2 1%a_1 2%b_2 %c_ |
項目の区切りに、改行 (ASCII LF) ではなく、ゼロバイトを使用する。 すなわち、入力を ASCII NUL で分離された項目として扱い、出力する各項目の末尾に ASCII NUL を付加する。このオプションは、‘perl -0’, ‘find -print0’, ‘xargs -0’ などと組み合わせて使用すると、 便利なことがある。そうしたコマンドでも、わがままなファイル名を (空白などの特殊文字を含んでいる場合でも) きちんと確実に処理するために、 同様なことをしているのである。
終了ステータス 0 は成功を示し、0 以外の値は失敗を示す。
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
This document was generated on June 7, 2022 using texi2html 1.82.