grep
grep
(グレップ、グレプ)は、UNIXおよびUnixオペレーティングシステムにおけるコマンド。テキストファイル中から、正規表現に一致する行を検索して出力する。
概要
編集grep
の名の由来は、ラインエディタedのコマンド g/re/p
である。その意味するところは「global regular expression print(ファイル全体から/正規表現に一致する行を/表示する)」で略号になっている[1]。
姉妹コマンドとして、正規表現ではなくリテラル(即値文字列)のみを扱う高速な fgrep
[2]、拡張正規表現が使える egrep
[3] がある。POSIX では fgrep
、egrep
を旧形式としていて、それぞれ grep -F
、grep -E
を使うことを標準としている。Linux Standard Baseでも指定コマンドになっている[4]。
使用法
編集grep
コマンドの基本的な使い方は
grep
オプション パターン ファイル
である。
ファイルは複数指定することができ、また省略して標準入力から検索することもできる。
オプションには次のようなものがある:
-i
: アルファベットの大文字小文字の区別をしない。-o
:パターンに一致した箇所のみ出力する。-v
: パターンに一致しない行を出力する。-r
: ファイルとしてディレクトリを指定し、その中の全てのファイルと、再帰的に下位ディレクトリに対して検索する。-q
:何も出力しない。-E
: 拡張正規表現を使用する。egrep
コマンドと同じ動作をする。-F
: 正規表現ではなくリテラルを使用する。fgrep
コマンドと同じ動作をする。
移植
編集テキストから文字列を検索するプログラムとして、有志により、 Microsoft Windows 用にgrepWin[5]としてGUI付きで移植されている。
参考文献
編集- Brian W. Kerninghan、ロブ・パイク『UNIXプログラミング環境』野中浩一訳、石田晴久監訳、アスキー出版局〈ASCII海外ブックス〉、1986年6月。ISBN 4-87148-351-7。
脚注
編集- ^ 英: search globally in the file / each lines to which the regular expression matches / print them
- ^ 英: fixed grep または fast grep
- ^ 英: extended grep
- ^ Linux Standard Base https://refspecs.linuxfoundation.org/lsb.shtml
- ^ https://github.com/stefankueng/grepWin