スポンサーリンク

cutでスペース区切りの列を抽出

cutコマンドの-dオプションで区切り文字を設定し、
-fオプションで抽出する列を指定できます。
※MACターミナル(BSD系)での動作確認です。

例えば、下記のスペース区切りのin.txtがあったとします。

 $ cat in.txt 
a1 2 3
b1 2 3
c1 2 3

-dオプションでスペースを指定しています。
-fオプションで2を指定して2列目を抽出します。
 $ cat in.txt | cut -d " " -f 2
2
2
2

2列目と3列目を抽出します。
 $ cat in.txt | cut -d " " -f 2,3
2 3
2 3
2 3

1~3列目を抽出します。
 $ cat in.txt | cut -d " " -f 1-3
a1 2 3
b1 2 3
c1 2 3

awkでも同様なことができます。
参考:awkで$1(1列目)$2(2列目)をprint出力する
 $ cat in.txt | awk '{print $2}'
2
2
2

スポンサーリンク

cutでカンマ区切りの列を抽出

cutコマンドでカンマ区切りのcsvファイルを処理します。

例えば、下記のcsv形式のファイルがあったとします。

 $ cat in2.txt 
a1,2,3
b1,2,3
c1,2,3

-dオプションでカンマを指定しています。
-fオプションで2を指定して、2列目を抽出します
 $ cat in2.txt | cut -d "," -f 2
2
2
2

1列目と3列目を抽出します。
 $ cat in2.txt | cut -d "," -f 1,3
a1,3
b1,3
c1,3

2〜3列目を抽出します。
 $ cat in2.txt | cut -d "," -f 2-3
2,3
2,3
2,3

awkでは-Fオプションでカンマを指定すると同様にできます。
参考:awkの-Fオプションで区切り文字を指定する方法
 $ cat in2.txt | awk -F "," '{print $2}'
2
2
2

スポンサーリンク