Log-Files
在文件夾中找到一個字元串以及它來自哪個文件?
我試圖在我的 /var/log 目錄中找到一些關鍵字,所以使用
cd /var/log 貓 * | grep關鍵字
我發現該字元串在該目錄中並查看它存在的行,但不知道它來自哪個文件。如何找到字元串,並查看它 cat 來自的文件?
grep
可以將文件名作為參數。cd /var/log grep keyword *
如果您一次從多個文件中 grep,則該行來自的文件名將與找到的行一起列印。
如果您只向 grep 提供 1 個文件名,但無論如何都想在文件上顯示該名稱,請將
-H
選項傳遞給 grep - 如果您在命令行中使用萬用字元(例如*.txt
)並且不知道有多少文件,這很有用將被搜尋)。如果您還想顯示行號,那就是
-n
選項。
find /var/log -type f | xargs grep -H
或者
find /var/log -type f -name \*log | xargs grep -H
或(比 xargs 慢得多)
find /var/log -type f -exec grep -H {} \;
對於獎勵積分, grep -i 將使搜尋不區分大小寫(但速度較慢)