このエントリーをはてなブックマークに追加


特定のカラムを削除し表示する・awkコマンド

特定のカラムを削除し、それ以外の情報を表示する方法を以下に記します。


関連記事

可変項目のテキストファイルから特定の項目を削除し表示する

以下のようなファイルがあり、2番目の情報のみを削除し表示したい場合は以下のようにすると実現できます。

$ cat date.txt 
1 Sunday 日曜日 星期天
2 Monday 月曜日 星期一
3 Tuesday 火曜日 星期二
4 Wednesday 水曜日 星期三
5 Thursday 木曜日 星期四
6 Friday 金曜日 星期五
7 Saturday 土曜日 星期六

実行例

$ cat date.txt | awk '{ $2="" ; print $0 }'
1  日曜日 星期天
2  月曜日 星期一
3  火曜日 星期二
4  水曜日 星期三
5  木曜日 星期四
6  金曜日 星期五
7  土曜日 星期六
 

2番目の項目を$=""とし、$0を使用することにより全てを表示することができます。
しかし、1番目と3番目の間に不要なスペースが1つ挿入されてしまいました。
そこで、バックスペースのエスケープシーケンスを使って以下のように記述し目的を達成しました。

$ cat date.txt | awk '{ $2="\b" ; printf("%s\n",$0) }'
1 日曜日 星期天
2 月曜日 星期一
3 火曜日 星期二
4 水曜日 星期三
5 木曜日 星期四
6 金曜日 星期五
7 土曜日 星期六
 


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2015-03-20 (金) 22:26:54