* grepコマンド [#p48000e8]

** OR検索 [#b8798726]
 ls | grep -e '.html' -e '.css' # .htmlと.cssだけ
 ls | grep -E '.html|.css'      # .htmlと.cssだけ(拡張正規表現を使って)

 ls | grep -e '.html' -e '.css'

** AND検索 [#b00ca58e]
 ls -l | grep 2016 | grep .txt

** NOT検索 [#pc15a95d]
 ls | grep -v '.html'               # .html以外
 ls | grep -v -e '.html' -e '.css'  # .htmlと.css以外
 ls | grep -v -E '.html|.css'       # .htmlと.css以外(拡張正規表現を使って)

** マッチしたファイル名だけ取り出す [#p5735d1b]
 grep -l FOO *

** マッチした内容だけ取り出す(ファイル名を抑止する) [#t113238f]
 grep -h FOO *

** マッチした行数を調べる [#k566f916]
 grep -c FOO *

 1.txt:1
 2.txt:0
 3.txt:1

** 独立した単語として検索する [#l1617ed8]
 cat 1.txt

 FOOBAR
 BAZ FOO

 grep -w FOO 1.txt

 BAZ FOO

** マッチした前後の行を表示する [#i182f598]
 cat 1.txt

 01
 02
 03
 04 FOO
 05
 06
 07

 grep -A2 -B1 FOO 1.txt

 03
 04 FOO
 05
 06

** 再帰的に指定したファイルのみgrepする [#r5d05a87]
 (IFS=$'\n'; for f in $(find . -type f); do (file $f | grep "FOO_BAR_BAZ") && echo $f ; done)

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS