grepコマンドライン
3762 ワード
grepコマンドライン
grep(global search regular expression(RE)and print out the line、正規表現を全面的に検索し、行を印刷する)は、正規表現を使用してテキストを検索し、一致する行を印刷する強力なテキスト検索ツールです.
オプション
grepコマンドの一般的な使い方
ファイルで単語を検索すると、「match_pattern」を含むテキスト行が返されます.
複数のファイル
grep "text"-n file_1 file_2
印刷スタイルは、文字またはバイトのオフセットに一致します.
echo gun is not unix | grep -b -o "not"7:not
1行の文字列の文字の安さは、その行の最初の文字から計算され、開始値は0です.オプション-b-oは一般的によく組み合わせて使用されます.
複数のファイルを検索し、一致するテキストがどのファイルにあるかを検索します.
grep -l "text"file1 file2 file3... grep再帰検索ファイル
マルチレベル・ディレクトリでテキストを再帰的に検索するには、次の手順に従います.
grep "text". -r -n
現在のディレクトリを表します.
一致するスタイルの文字の大文字と小文字を無視:
echo "hello world"| grep -i "HELLO"hello
オプション-eブレーキの複数の一致スタイル:
-fオプションを使用して、複数のスタイルを一致させ、スタイルファイルに一致する文字を行ごとに書くこともできます.
cat patfile
ディレクトリ内のすべてのみです.phpと.htmlファイル内の再帰検索文字「main()」
grep "main()". -r --include *.{php,html}
検索結果からすべてのREADMEファイルを除外
grep "main()". -r --exclude "README"
検索結果からfilelistファイルリストからファイルを除外する
grep "main()". -r--exclude-from filelist 0バイト接尾辞のgrepとxargsを使用します.
テストファイル:
実行するとfile 1とfile 3が削除され、grep出力は-Zオプションで0値バイトを終端ファイル名(0)として指定され、xargs-0は入力を読み込み、0値バイトの終端でファイル名を区切り、一致ファイルを削除します.-Zは通常-lと組み合わせて使用されます.
grepサイレント出力:
コマンドの実行に成功して0を返すと、失敗すると0以外の値が返されます.一般的に条件テストに使用されます.
一致するテキストの前または後の行を印刷します.
結果に一致する3行を表示し、-Aオプションを使用します.
seq 10 | grep "5"-A 3
結果に一致する前の3行を表示します.-Bオプションを使用します.
seq 10 | grep "5"-B 3
grep(global search regular expression(RE)and print out the line、正規表現を全面的に検索し、行を印刷する)は、正規表現を使用してテキストを検索し、一致する行を印刷する強力なテキスト検索ツールです.
オプション
-a 。
-A , 。
-b , 。
-c 。
-C - , 。
-d , , grep 。
-e 。
-E , 。
-f , , grep , 。
-F 。
-G 。
-h , 。
-H , 。
-i 。
-l 。
-L 。
-n , 。
-q 。
-R/-r “-d recurse” 。
-s 。
-v 。
-w 。
-x 。
-y “-i” 。
-o 。
grepコマンドの一般的な使い方
ファイルで単語を検索すると、「match_pattern」を含むテキスト行が返されます.
grep match_pattern file_name
grep "match_pattern" file_name
:
grep "match_pattern" file_1 file_2 file_3 ...
-v :
grep -v "match_pattern" file_name
--color=auto :
grep "match_pattern" file_name --color=auto
-E :
grep -E "[1-9]+"
egrep "[1-9]+"
-o :
echo this is a test line. | grep -o -E "[a-z]+\."
line.
echo this is a test line. | egrep -o "[a-z]+\."
line.
-c :
grep -c "text" file_name
-n :
grep "text" -n file_name
cat file_name | grep "text" -n
複数のファイル
grep "text"-n file_1 file_2
印刷スタイルは、文字またはバイトのオフセットに一致します.
echo gun is not unix | grep -b -o "not"7:not
1行の文字列の文字の安さは、その行の最初の文字から計算され、開始値は0です.オプション-b-oは一般的によく組み合わせて使用されます.
複数のファイルを検索し、一致するテキストがどのファイルにあるかを検索します.
grep -l "text"file1 file2 file3... grep再帰検索ファイル
マルチレベル・ディレクトリでテキストを再帰的に検索するには、次の手順に従います.
grep "text". -r -n
現在のディレクトリを表します.
一致するスタイルの文字の大文字と小文字を無視:
echo "hello world"| grep -i "HELLO"hello
オプション-eブレーキの複数の一致スタイル:
echo this is a text line | grep -e "is" -e "line" -o
is
line
-fオプションを使用して、複数のスタイルを一致させ、スタイルファイルに一致する文字を行ごとに書くこともできます.
cat patfile
aaa
bbb
echo aaa bbb ccc ddd eee | grep -f patfile -o
grep :
ディレクトリ内のすべてのみです.phpと.htmlファイル内の再帰検索文字「main()」
grep "main()". -r --include *.{php,html}
検索結果からすべてのREADMEファイルを除外
grep "main()". -r --exclude "README"
検索結果からfilelistファイルリストからファイルを除外する
grep "main()". -r--exclude-from filelist 0バイト接尾辞のgrepとxargsを使用します.
テストファイル:
echo "aaa" > file1
echo "bbb" > file2
echo "aaa" > file3
grep "aaa" file* -lZ | xargs -0 rm
実行するとfile 1とfile 3が削除され、grep出力は-Zオプションで0値バイトを終端ファイル名(0)として指定され、xargs-0は入力を読み込み、0値バイトの終端でファイル名を区切り、一致ファイルを削除します.-Zは通常-lと組み合わせて使用されます.
grepサイレント出力:
grep -q "test" filename
コマンドの実行に成功して0を返すと、失敗すると0以外の値が返されます.一般的に条件テストに使用されます.
一致するテキストの前または後の行を印刷します.
結果に一致する3行を表示し、-Aオプションを使用します.
seq 10 | grep "5"-A 3
結果に一致する前の3行を表示します.-Bオプションを使用します.
seq 10 | grep "5"-B 3
, -C :
seq 10 | grep "5" -C 3
, “--” :
echo -e "a
b
c
a
b
c" | grep a -A 1
a
b
--
a
b