pasteコマンドは横方向に複数ファイルを結合する、とても便利なコマンドです。
その基本的な使い方をご紹介します。
スポンサーリンク
横方向に複数ファイルを結合するpasteコマンドの基本的な使い方
基本的な使い方は、下記の形式で書きます。
ファイル1〜ファイルNを横方向に結合します。
paste ファイル1 ファイル2 ファイル3 ・・・ファイルN
例えば、下記のように、in.txtとin2.txtとin3.txtがあったとします。
$ cat in.txt 4 5 4 5 4 5
$ cat in2.txt 6 6 6
$ cat in3.txt 7 7 7
3ファイルを結合する場合には、下記のようにコマンドラインで実行します。
$ paste in.txt in2.txt in3.txt
下記が実行です。横方向に3ファイルが結合されているのが確認できます。
$ paste in.txt in2.txt in3.txt 4 5 6 7 4 5 6 7 4 5 6 7
スポンサーリンク
pasteコマンドに-dオプションを付けて出力の区切り文字を指定
pasteコマンドのデフォルトの出力の区切り文字はタブになっています。
そこで、下記の形式で、-dオプションをつけることで、出力の区切り文字を変更できます。
paste -d 区切り文字 ファイル1 ファイル2 ファイル3 ・・・ファイルN
例えば、先述の3ファイルをスペース区切りで出力したい場合は、下記のように実行します。
$ paste -d " " in.txt in2.txt in3.txt
下記が実行結果になります。先程はタブ区切りの出力となっていましたが、スペース区切りの出力となっています。
$ paste -d " " in.txt in2.txt in3.txt 4 5 6 7 4 5 6 7 4 5 6 7
pasteコマンド-sオプションで行と列を入れ替える
pasteコマンドは-sオプションをつけることで、行と列を入れ替えることができます。
paste -s ファイル1 ファイル2 ファイル3 ・・・ファイルN
例えば、同様に先述の3ファイルを結合した際に、行と列を入れ替えたい場合は、下記のように実行します。
$ paste -s in.txt in2.txt in3.txt
下記のような実行結果となり、行と列が入れ替わっていることが確認できます。
$ paste -s in.txt in2.txt in3.txt 4 5 4 5 4 5 6 6 6 7 7 7
スポンサーリンク