1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Linuxコマンド忘備録-特定の文字列が含まれる行を表示させる-

Last updated at Posted at 2024-08-19

特定の文字列が含まれる行を抽出する機会があったため忘備録として記録に残そうと思います。

想定データ

下記のデータを想定します。
ファイル名:test.csv

aaa,2024-06-01,bbb,ccc
ddd,2024-06-02,eee,fff
ggg,2024-07-01,hhh,iii
jjj,2024-07-02,kkk,lll
mmm,2024-08-01,nnn,ooo
ppp,2024-08-02,qqq,rrr

実行するコマンド

grep -i "特定の文字列" ファイル名

上記に具体的な文字列、ファイル名を書くと以下になります。

grep -i "2024-06" test.csv

実行結果は以下のように、test.csvファイルの中で「2024-06」が含まれる行を表示します。

$ grep -i "2024-06" test.csv
aaa,2024-06-01,bbb,ccc
ddd,2024-06-02,eee,fff

オプション -e を追加

オプションに-eを加えることで、複数の文字列を指定できます。

$ grep -i -e "2024-06" -e "2024-07" test.csv
aaa,2024-06-01,bbb,ccc
ddd,2024-06-02,eee,fff
ggg,2024-07-01,hhh,iii
jjj,2024-07-02,kkk,lll

オプション -c を追加

オプションに-cを加えることで行数を表示することができます。

$ grep -ic "2024-06" test.csv
2

出力先にファイルを指定

出力先をファイルに指定すると、特定の文字列が含まれる行のみのファイルが作成できます。

$ grep -i "2024-06" test.csv > test_202406.csv
$ cat test_202406.csv 
aaa,2024-06-01,bbb,ccc
ddd,2024-06-02,eee,fff

参考資料

告知

最後にお知らせとなりますが、イーディーエーでは一緒に働くエンジニアを
募集しております。詳しくは採用情報ページをご確認ください。

みなさまからのご応募をお待ちしております。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?