(O+P)ut

頭の整理のために、Slerで働く若手インフラエンジニアが、【 (O+P)ut = OutPut 】していく場です。

【Linux】指定した列を特定の単語で検索し、表示する【awk】

タイトルの通りで、grepコマンドを用いると行全体で検索がかかってしまう、それを避けたい時に使うワンライナーが以下となります。

cat ファイル名.csv | awk 'BEGIN{FS=","} $3 ~ /hoge/ {print $0}'

上の場合、csvファイル、つまり区切り文字が カンマ(,) なので field separator を "," としています。カンマ区切りされた行の3列目に hoge という文字列が含まれていれば 行全体を表示することができます。$0 は行全体という意味なので、任意のX列目が欲しければ $X としてください。

以上、かなり短い かつ とても簡単 ではありますが、Google検索で探そうとするとなかなかヒットしなかったので、キーワードをちりばめながら備忘録程度に書いてみました。