grepコマンド

OR検索

 ls | grep -e '.html' -e '.css' # .htmlと.cssだけ
 ls | grep -E '.html|.css'      # .htmlと.cssだけ(拡張正規表現を使って)

AND検索

 ls -l | grep 2016 | grep .txt

NOT検索

 ls | grep -v '.html'               # .html以外
 ls | grep -v -e '.html' -e '.css'  # .htmlと.css以外
 ls | grep -v -E '.html|.css'       # .htmlと.css以外(拡張正規表現を使って)

マッチしたファイル名だけ取り出す

 grep -l FOO *

マッチした内容だけ取り出す(ファイル名を抑止する)

 grep -h FOO *

マッチした行数を調べる

 grep -c FOO *
 1.txt:1
 2.txt:0
 3.txt:1

独立した単語として検索する

 cat 1.txt
 FOOBAR
 BAZ FOO
 grep -w FOO 1.txt
 BAZ FOO

マッチした前後の行を表示する

 cat 1.txt
 01
 02
 03
 04 FOO
 05
 06
 07
 grep -A2 -B1 FOO 1.txt
 03
 04 FOO
 05
 06

再帰的に指定したファイルのみgrepする

 (IFS=$'\n'; for f in $(find . -type f); do (file $f | grep "FOO_BAR_BAZ") && echo $f ; done)

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

Last-modified: 2017-03-17 (金) 20:59:00