grep
UK ['grep] US ['grep]
[計算] 対象行コマンドを取得
Linuxのgrepコマンド 構文
機能: grep コマンドは、ファイル内の条件を満たす文字列を検索するために使用されます。
構文: grep [-abcEFGhHilLnqrsvVwxy][-A<表示列数>][-B<表示列数>][-C<表示列数>][ -d<アクションの実行>][-e<テンプレート スタイル>][-f<テンプレート ファイル>][--help][テンプレート スタイル][ファイルまたはディレクトリ...]
Linuxのgrepコマンド 例
1. 現在のディレクトリで、接尾辞が word file のファイル内でテスト文字列を含むファイルを見つけ、その文字列の行を出力します。この時点で、次のコマンドを使用できます:
grep test *file
結果は次のようになります:
$ grep test test* #查找前缀有“test”的文件包含“test”字符串的文件 testfile1:This a Linux testfile! #列出testfile1 文件中包含test字符的行 testfile_2:This is a linux testfile! #列出testfile_2 文件中包含test字符的行 testfile_2:Linux test #列出testfile_2 文件中包含test字符的行
2. 条件を満たすファイルを再帰的に検索します。たとえば、指定されたディレクトリ /etc/acpi とそのサブディレクトリ (サブディレクトリが存在する場合) 内のすべてのファイルで文字列「update」を含むファイルを検索し、その文字列が存在する行の内容を出力するには、次のコマンドを使用します。 :
grep -r update /etc/acpi
出力結果は次のとおりです:
$ grep -r update /etc/acpi #以递归的方式查找“etc/acpi” #下包含“update”的文件 /etc/acpi/ac.d/85-anacron.sh:# (Things like the slocate updatedb cause a lot of IO.) Rather than /etc/acpi/resume.d/85-anacron.sh:# (Things like the slocate updatedb cause a lot of IO.) Rather than /etc/acpi/events/thinkpad-cmos:action=/usr/sbin/thinkpad-keys--update
3. 逆検索。上記の例は、条件を満たす行を検索して出力する例でしたが、「-v」パラメータを使用すると、条件を満たさない行の内容を出力することができます。
ファイル名に test が含まれるファイルから、test を含まない行を探します。このとき使用するコマンドは
grep -v test *test*
結果は次のとおりです。