指定したフィールドを抜き出す・cutコマンド †cutコマンドを利用して指定したフィールドと指定したフィールド範囲を抜き出す方法を記します。 関連記事 †cutコマンドについて †cutコマンドのデフォルトの区切り文字はタブとなっています。
指定したフィールドを取り出す †指定したフィールドを取り出す例を以下に記します。 タブが区切り文字の場合 data.tsv †2フィールド目を取り出します。 $ cut -f 2 data.tsv redhat ubuntu vine 以下のように記述しても同様の動作となります。 $ cat data.tsv | cut -f 2 redhat ubuntu vine 区切り文字がスペース data.txt †3フィールド目を取り出します。 $ cut -d ' ' -f 3 data.txt fedora knoppix arch 以下のように記述しても同様の動作となります。 $ cat data.txt | cut -d ' ' -f 3 fedora knoppix arch 区切り文字がカンマ data.csv †4フィールド目を取り出します $ cut -d , -f 4 data.csv scientific mint puppy 以下のように記述しても同様の動作となります。 $ cat data.csv | cut -d , -f 4 scientific mint puppy 指定したフィールド範囲を取り出す †指定したフィールド範囲を取り出す例を以下に記します。 タブが区切り文字の場合 data.tsv †$ cut -f 2-3 data.tsv redhat fedora ubuntu knoppix vine arch 以下のように記述しても同様の動作となります。 $ cat data.tsv | cut -f 2-3 redhat fedora ubuntu knoppix vine arch 区切り文字がスペース data.txt †$ cut -f 2-3 -d ' ' data.txt redhat fedora ubuntu knoppix vine arch 以下のように記述しても同様の動作となります。 $ cat data.txt | cut -f 2-3 -d ' ' redhat fedora ubuntu knoppix vine arch 区切り文字がカンマ data.csv †$ cut -f 2-3 -d , data.csv redhat,fedora ubuntu,knoppix vine,arch 以下のように記述しても同様の動作となります。 $ cat data.csv | cut -f 2-3 -d , redhat,fedora ubuntu,knoppix vine,arch 以上のように-f 開始フィールド-終了フィールドを指定すると指定した範囲を取り出すことができます。 指定したフィールドから最後まで †終了フィールドを省略すると指定した開始フィールドから最後までが表示されます。 $ cat data.tsv centos redhat fedora scientific debian ubuntu knoppix mint suse vine arch puppy $ cut -f 3- data.tsv fedora scientific knoppix mint arch puppy 先頭から指定したフィールドまで †開始フィールドを省略すると先頭から指定した終了フィールドまで表示されます。 以下の例は3フィールド目まで表示しています。 $ cat data.tsv centos redhat fedora scientific debian ubuntu knoppix mint suse vine arch puppy $ cut -f -3 data.tsv centos redhat fedora debian ubuntu knoppix suse vine arch |