[Shell] findとgrepを組み合わせてテキストドキュメントを検索する
find . -name "*.css" -print | xargs grep --color=auto -nH "screen-reader-shortcut"
まあ何はなくて上のように検索すればよい。
しかし、min.css
のように1行にすべての内容がすべて入っている場合、頭が痛い。 grep
が訪れてファイルかを多出力してくれることだ。そのような場合には、以下のようにregex
オプションを使用してくれれば良い。
find . -regex ".*[^(min)].css$" -print | xargs grep --color=auto -nH "screen-reader-shortcut"
find
オプション
-name
:ファイル名検索-regex
:正規表現でファイル名検索-print
:結果をStandard Outputに渡します。そうするxargsで、それぞれの行をgrepに渡すことができるかよりも。
パイプを使用する
xargs
:ただパイプを使えばStandard Outputを丸ごと渡してくれる、これを使えば行単位の引数の値にノムギナより。
grepの場合
-color=auto
:検索結果に色塗られるだろ-n
:行番号の出力-H
:ファイル名出力。しかし実際にはファイルが複数ある場合、ファイル名は基本的に出てくる。
- コメント機能はありません。コメントの代わりに[email protected]
にメールを送ってください。