タグ付けされた質問 「grep」

grepは、もともとUnix用に書かれたコマンドラインのテキスト検索ユーティリティです。正規表現を使用してテキストを照合し、一般にパイプラインのフィルターとして使用されます。このタグは、質問がgrepまたはgrepベースのAPIを使用したプログラミングに関連している場合にのみ使用してください。grepコマンドラインオプション自体の使用またはトラブルシューティングに関する質問はトピックから外れています。

9
grepと置換の方法
ディレクトリ内のすべてのファイルとサブディレクトリ内で指定された文字列を再帰的に検索し、この文字列を別の文字列に置き換える必要があります。 それを見つけるコマンドは次のようになるでしょう。 grep 'string_to_find' -r ./* しかし、どのようにしてすべてのインスタンスstring_to_findを別の文字列に置き換えることができますか?
251 linux  grep  replace 

11
別のファイルにない1つのファイル内の行を見つける高速な方法?
2つの大きなファイル(ファイル名のセット)があります。各ファイルで約30.000行。file2に存在しないfile1の行をすばやく見つける方法を見つけようとしています。 たとえば、これがfile1の場合: line1 line2 line3 そして、これはfile2です。 line1 line4 line5 次に、私の結果/出力は: line2 line3 これは機能します: grep -v -f file2 file1 しかし、大きなファイルで使用すると、非常に遅くなります。 diff()を使用してこれを行うには良い方法があると思いますが、出力は行だけで、他には何もないはずです。そのためのスイッチを見つけることができないようです。 bashと基本的なLinuxバイナリを使用して、これを行う高速な方法を見つけるのを手伝ってくれる人はいますか? 編集:私自身の質問をフォローアップするために、これはこれまでにdiff()を使用して見つけた最良の方法です: diff file2 file1 | grep '^>' | sed 's/^>\ //' 確かに、もっと良い方法があるに違いない?
241 bash  grep  find  diff 

5
grep式を反転する方法
次のgrep式は、現在のディレクトリとサブディレクトリにあるすべての.exeファイルと.htmlファイルを一覧表示します。 ls -R |grep -E .*[\.exe]$\|.*[\.html]$ この結果を逆にして、代わりに.htmlまたは.exeではないものをリストする方法を教えてください。(つまり、!=です。)
237 regex  linux  grep 


3
path / file:lineを表示しないgrep
どのようにgrepして一致する行のみを返すのですか?つまり、パス/ファイル名は結果から省略されます。 この場合、現在のディレクトリにあるすべての.barファイルを調べて、FOOという用語を検索します find . -name '*.bar' -exec grep -Hn FOO {} \;
234 linux  unix  grep  find 

19
`find`で.svnディレクトリを無視するにはどうすればよいですか?
私はよくfindコマンドを使用して、ソースコード全体を検索し、ファイルを削除します。厄介なことに、Subversionは各ファイルの複製を.svn/text-base/ディレクトリに保存しているため、単純な検索で大量の複製結果が得られます。たとえばuint、複数のmessages.hとmessages.cppファイルを再帰的に検索したいとします。 # find -name 'messages.*' -exec grep -Iw uint {} + ./messages.cpp: Log::verbose << "Discarding out of date message: id " << uint(olderMessage.id) ./messages.cpp: Log::verbose << "Added to send queue: " << *message << ": id " << uint(preparedMessage->id) ./messages.cpp: Log::error << "Received message with invalid SHA-1 hash: id " …
227 linux  find  bash  grep  svn 


9
makeinfoとは何ですか。
GNU grepをビルドしようとしていますが、makeを実行すると次のようになります。 [snip] /bin/bash: line 9: makeinfo: command not found makeinfoとは何ですか。 (違いがある場合、これはUbuntuです)
224 ubuntu  gcc  makefile  grep 

5
ディレクトリ内のすべてのファイルに対してgrep操作を実行する方法
xenserverで作業していて、ディレクトリにある各ファイルに対してコマンドを実行し、コマンドの出力からいくつかのものをgreppingしてファイルに追加したいと考えています。 使用したいコマンドと、必要に応じて文字列をgrepする方法は明確です。 しかし、はっきりしないのは、各ファイルでこのコマンドを実行して、ファイルが見つからなくなるまで次のファイルに進む方法です。
218 linux  shell  grep 

11
一致した行の後の次の行のみを表示するにはどうすればよいですか?
grep -A1 'blah' logfile 「blah」が含まれているすべての行に対するこのコマンドのおかげで、「blah」を含む行の出力と、ログファイルの次の行が表示されます。それは単純なものかもしれませんが、「何とか」がある行を省略して、出力に次の行のみを表示する方法を見つけることができません。
218 awk  sed  grep 

21
1行の2つの文字列をgrepで照合する
grep2つの異なる文字列を含む行を一致させるために使用しようとしています。私は次のことを試しましたが、これはstring1 または string2のいずれかを含む行と一致しますが、これは必要ではありません。 grep 'string1\|string2' filename それでgrep、両方の文字列を含む行だけとどのように一致しますか?
218 regex  linux  string  grep 



2
バイナリファイルのマッチング結果をgrepで抑制する方法[終了]
閉まっている。この質問はスタックオーバーフローのガイドラインを満たしていません。現在、回答を受け付けていません。 この質問を改善してみませんか?Stack Overflowのトピックとなるように質問を更新します。 3年前休業。 この質問を改善する grepLinuxで使用する場合、結果には多くの「バイナリファイルXXX一致」が含まれますが、これは気にしません。結果のこの部分を抑制する方法、またはgrepでバイナリファイルを除外する方法
215 linux  grep 

25
grepを使用して複数行にわたるパターンを見つける方法は?
「abc」と「efg」がこの順序で含まれているファイルを検索したいのですが、その2つの文字列はそのファイルの異なる行にあります。例:コンテンツを含むファイル: blah blah.. blah blah.. blah abc blah blah blah.. blah blah.. blah blah.. blah efg blah blah blah blah.. blah blah.. 一致する必要があります。
208 regex  grep 

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.