サイト内検索:
strcat : 指定したフィールドのデータを結合する
使い方とオプション
strcat [-e] <f>+"str"+<f>... <file>
ファイル <file> を読み込み、+ で結合指定したフィールドや文字列を結合します。結合しないフィールドも指定できます。フィールド指定には NF やNF-1 などの形式も指定できます。フィールド “0” はレコードそのものになります。
テキストデータの第2フィールドと第3フィールドを取り出して出力します。
$ cat data
0000000 浜地 太郎
0000001 鈴田 花子
0000003 杉山 武夫
0000004 白土 恵子
0000005 崎村 茂
$ strcat 1 2+3 data
0000000 浜地太郎
0000001 鈴田花子
0000003 杉山武夫
0000004 白土恵子
0000005 崎村茂
テキストデータの第2フィールドと第3フィールドを "_" で結合します。シェルが " " (ダブルクオート)文字を解釈するのでエスケープが必要です。
$ strcat 1 2+\"_\"+3 data
0000000 浜地_太郎
0000001 鈴田_花子
0000003 杉山_武夫
0000004 白土_恵子
0000005 崎村_茂
/ を使った例
$ cat data2
1 2 3 4 5 6 7 8
1 2 3 4 5 6 7 8
1 2 3 4 5 6 7 8
$ strcat 1/3 4+5 6/NF-1 data2
1 2 3 45 6 7
1 2 3 45 6 7
1 2 3 45 6 7
フィールド 0 はレコード全体を表します。
$ cat data3
1 2 3
1 2 3
$ strcat 3+2 0 data3
32 1 2 3
32 1 2 3
単独の“文字列”のケース
$ cat data4
a b c
$ strcat 0 \"d\" data4
a b c d
-e オプションを指定すると、文字列内の + <文字> は <文字> を表します。これにより、文字列内に " を使うことができます。
$ strcat -e '"ABC\""+1+"\"DEF"' data4
ABC"a"DEF
Version : Tue Jun 18 19:00:37 JST 2019
Edition : 1
© 2021 Universal Shell Programming Laboratory site