5

私はack(ack-grepとして配布されることもあります)を使用して、他に何を知っているかを知っているコード、画像の複雑なディレクトリを検索していますが、反応はかなり遅いです。何を検索しているのかを診断して、速度を低下させているので、無視してもらうにはどうすればよいですか?

ack-grepが遅い理由は、おそらく同じ理由でgrepが遅くなることに気付いたので、両方を参照するようにタイトルの表現を変更しました。

現在のack-grepコマンドエイリアス:

function view ()
{
echo "ack-grep -i $@ // ignoring third-party directories"
ack-grep -i --ignore-dir=third-party --ignore-dir="unclean-files" --ignore-dir=FCKeditor --ignore-dir=smarty --ignore-dir=codepress --ignore-dir=yui "$@"
}

view "Oops! Required fields"そのため、特定のディレクトリを無視するなど、そのエイリアスを介して文字列で大文字と小文字を区別しない検索を実行します。

私が実際に使用できるのは、grepまたはack-grepのいずれかに対する「詳細」モードであると思います。これにより、検索が遅いためにぶら下がっているサブディレクトリを視覚的に確認できます。

4

2 に答える 2

5

問題をすばやく視覚的に診断するために、-Lスイッチを使用して一致するすべてのファイルを出力することになりました。以下のコマンド構造のみを使用しました。

ack-grep -L "Oops! Required fields were not all completed."

于 2011-04-05T18:42:17.977 に答える
1

何を探していますか?それが特定のタイプのソースである場合(変数を探している場合など)は、適切なスイッチを使用します(perlの場合は、-perlなどを使用します)。ソースがたくさんある場合は、何をするかに関係なく、しばらく時間がかかります。

Ack-grepは、あなたが言うほど賢いだけです。また、正規表現はどのくらい複雑ですか?正規表現にはオーバーヘッドがあります。何かの名前を検索するだけの場合は、正規表現を使用しないでください。ボルトを緩めるためにハンマーを使用しないでください。

于 2011-04-05T18:15:52.447 に答える