今日の人気記事

  1. zip - ファイルを圧縮 - Linuxコマンド
  2. sleep - 指定した時間だけ処理を遅延 - Linuxコマンド
  3. su - ユーザーを変更する - Linuxコマンド
  4. chown - ファイルの所有者やグループを変更 - Linuxコマンド
  5. tar - アーカイブの作成・展開 - Linuxコマンド

cut - ファイルの各行から一部分を切り出す - Linuxコマンド

スポンサーリンク

cutコマンドは、ファイルの各行から指定した一部分を切り出し、標準出力に表示するコマンドです。

cutコマンド

書式

cut [オプション] [ファイル]

オプション

-b バイト数切り出すバイト数を指定します。
-c 文字数切り出す文字数を指定します。
-d 文字区切り文字を指定します。デフォルトの区切り文字はタブです。
-f フィールド数切り出すフィールド数を指定します。
-s区切り文字を含まない文字列は出力に表示しません。

数値の指定方法

NNを切り出します。
N-Nから行末までを切り出します。
N-MNからMまでを切り出します。
-M行頭からMまでを切り出します。

使用例

テキストファイル(hoge.txt)を使って、cutコマンドの挙動を確認しましょう。

$ cat hoge.txt
1234567890
abcdefghij

3文字目を切り出します。

$ cut -c 3 hoge.txt
3
c

5文字目から行末までを切り出します。

$ cut -c 5- hoge.txt
567890
efghij

次は、タブ区切りのテキストファイル(foo.txt)を使って、cutコマンドの挙動を確認します。

$ cat foo.txt
12	34	56	78	90
ab	cd	ef	gh	ij

行頭から3フィールド目までを切り出します。

$ cut -f -3 foo.txt 
12	34	56
ab	cd	ef

次は、CSVファイル(bar.csv)を使って、cutコマンドの挙動を確認します。

$ cat bar.csv
12,34,56,78,90
ab,cd,ef,gh,ij

オプション -s を使って、区切り文字「,」を指定し、4フィールドから行末までを切り出します。

$ cut -d , -f 4- bar.csv
78,90
gh,ij

関連コマンド

sort, split, strings

関連記事(一部広告含む)