S-JIS[2006-05-27] 変更履歴

cut -f フィールド番号 -dデリミター 〔ファイル名〕

ファイルの各行が デリミターの文字で区切られた複数フィールドで書かれていると見做し、指定されたフィールドだけを出力する。

% cat file1
aa bb c

dd ee f
gg hh i
% cut -f 1,3 -d' ' file1	←スペース区切りで、1番目と3番目のフィールドだけ出力
aa c
			←フィールドが足りない行は、在る分だけ出力(この例では空行)
dd f
gg i

↓参考

% awk '{print $1 " " $3}' file1
aa c

dd f
gg i

cut -cカラム番号 〔ファイル名〕

ファイルの各行から、指定された位置だけを出力する。

% echo "abcd" | cut -c2-3	←各行の2文字目から3文字目までを出力
bc
% echo "abcdef" | cut -c2-	←各行の2文字目以降を出力
bcdef

-bでバイナリファイルの固定位置も扱える。
(テキストファイルに対して使うと、-cとどこが違うのか不明(爆))


paste 〔ファイル名…〕

各ファイルの行をタブで結合して1つの行として出力する。

% cat file2
11 22 33
44 55 66

77 88 99
00
% paste file1 file2
aa bb c	11 22 33
	44 55 66	←空行でもタブだけは出力される
dd ee f		←この行も、fの右側にタブが1つ出力されている
gg hh i	77 88 99
	00

UNIXコマンドへ戻る
メールの送信先:ひしだま