私はGitリポジトリを検索しており、.git
フォルダを含めたいと考えています。私は隠しファイルをgrepする方法はありますか?
grep -r search *
を実行する場合
grep
は、このフォルダが含まれるようにgrepコマンドになり何このフォルダが含まれていませんか?
私はGitリポジトリを検索しており、.git
フォルダを含めたいと考えています。私は隠しファイルをgrepする方法はありますか?
grep -r search *
を実行する場合
grep
は、このフォルダが含まれるようにgrepコマンドになり何このフォルダが含まれていませんか?
この記事の末尾にある解決策を、あなたがやっていることの良い選択肢として参照してください。
明示的に隠しファイルを含めることもできます(ディレクトリもファイルです)。
grep -r search * .*
*
は、隠されたものを除くすべてのファイルにマッチしますし、.*
は隠しファイルにマッチします。ただし、指定されたディレクトリに隠されていないファイルも隠されていないファイルもないと失敗します。もちろん、.*
の代わりに.git
を明示的に追加することもできます。あなたは、単に、指定されたディレクトリ内で検索したい場合は
しかし、このようにそれを行う:
はgrep -r search .
.
は非隠された隠しファイルの両方が含まれます、現在のパスを、一致します。
おそらく、あなたは
find . -exec grep -Hn search {} \;
のような完全なソリューションのためのコマンドこのコマンドは、「検索」の文字列を隠しファイルやディレクトリの中身を検索すると、偶然の一致で任意のファイルを一覧表示されます「見つける」と「はgrepを」組み合わせる好むでしょう
ファイルパス:行番号:行偶然の一致と
./foo/bar:42:search line
./foo/.bar:42:search line
./.foo/bar:42:search line
./.foo/.bar:42:search line
あなたはこのアプローチを使用することもできます。この出力形式と
find ~ -name '*' | xargs grep search
またはあなただけのトップレベル(あなたがこれらをしようとしているかどうかをテストするために迅速である)で検索する場合:
find ~ -maxdepth 1 -name '*' | xargs grep search
他のすべての答えは優れています。この1つは覚えやすいかもしれません:
find . -type f | xargs grep search
は(隠さ含む)のみのファイルを検索し、私はこの問題に遭遇した
各ファイルをgrepして、@ビットマスクの回答に基づいて、ここに私の簡単な変更であります問題を回避@seheによって指摘:
grep -r search_string * .[^.]*
私はこれは: 'sudo grep -r ANDROID_HOME *。[^。] *'ここで間違っていますか? – messerbill
@messerbill検索はどこで実行していますか? – insaner
あなたの現在の場所からONLYすべての隠しファイルやディレクトリ内を検索するには:
find . -name ".*" -exec grep -rs search {} \;
ONLYすべての隠しファイル:
find . -name ".*" -type f -exec grep -s search {} \;
ONLYすべての隠しディレクトリ:(。検索-rのgrep * *)
find . -name ".*" -type d -exec grep -rs search {} \;
最初のアプローチは、私のために働きました。 2番目の方法(grep -r search。)では文字列が見つかりませんでした。 "-r"を省略し、最上位のディレクトリだけを検索しても同様の結果が得られました。私はGNU grep 2.6.3を使用しています。 – Alan
@Alan:それは変です。私はこれを定期的に使用します。あなたは同じディレクトリでそれを試しましたか? – bitmask
はい、私はしました。ちなみに、tcshとbashのどちらを使っても、結果は同じです。 Debian 5 64ビットシステムで、これは価値があります。 – Alan