次の場所に 2 つのログ ファイルがあるとします:
- C:/temp/my.log
- C:/temp/alsoMy.log
Cd から C:に移動し、次を使用:
grep -r somethingtosearch temp/*.log
次のようなリストが表示されます:
temp/my.log:somethingtosearch
temp/alsoMy.log:somethingtosearch1
temp/alsoMy.log:somethingtosearch2
まったく同じ問題を探していたときにここに落ちました。他の人にも役立つかもしれません.
本当の解決策は次のとおりだと思います:
cat *.log | grep -H somethingtosearch
フルパスを見たい場合は cd
をお勧めします 最上位ディレクトリ (Windows を使用している場合はドライブの) へ
cd C:\
grep -r somethingtosearch C:\Users\Ozzesh\temp
または Linux の場合:
cd /
grep -r somethingtosearch ~/temp
ファイル名のフィルタリング (*.log) に本当に抵抗し、かつ recursive
が必要な場合 (すべてのファイルが同じディレクトリにあるわけではありません)、 find
を組み合わせて と grep
が最も柔軟な方法です:
cd /
find ~/temp -iname '*.log' -type f -exec grep somethingtosearch '{}' \;