cut
テキストファイルを読み取り、特定の文字列で分割します。タブで分割されたファイルなどから特定の列の値を抽出します。
NAME
cut -- cut out selected portions of each line of a file
SYNOPSIS
cut -b list [-n] [file ...]
cut -c list [file ...]
cut -f list [-d delim] [-s] [file ...]
github
- githubのjupyter notebook形式のファイルはこちら
google colaboratory
- google colaboratory で実行する場合はこちら
環境
筆者のOSはmacOSです。LinuxやUnixのコマンドとはオプションが異なります。
実際に動かす際は先頭の!や先頭行の%%bashは無視してください。
!sw_vers
ProductName: Mac OS X
ProductVersion: 10.14.6
BuildVersion: 18G95
!bash --version
GNU bash, version 3.2.57(1)-release (x86_64-apple-darwin18)
Copyright (C) 2007 Free Software Foundation, Inc.
使用例
代表的なオプション
- d : 区切り文字を指定します
- f : 区切りから何文字目の文字を抽出するか選択します
テスト用のファイルを作成します。タブ区切りで作成します。
%%bash
echo -e "a\tb\nc\td" > temp1.txt
cat -t temp1.txt
a^Ib
c^Id
1列目を表示します。
%%bash
cut -f 1 temp1.txt
a
c
2列目を表示します。
%%bash
cut -f 2 temp1.txt
b
d
スペースで区切られたファイルを作成します。
%%bash
echo -e "a b\nc d" > temp2.txt
cat temp2.txt
a b
c d
%%bash
cut -d ' ' -f 1 temp2.txt
a
c
%%bash
cut -d ' ' -f 2 temp2.txt
b
d