Linux查找文件內容的常用命令方法:
1、從文件內容查找匹配指定字元串的行:
$ grep "被查找的字元串" 文件名
2、從文件內容查找與正則表達式匹配的行:
$ grep –e “正則表達式” 文件名
3、查找時不區分大小寫:
$ grep –i "被查找的字元串" 文件名
4、查找匹配的行數:
$ grep -c "被查找的字元串" 文件名
5、從文件內容查找不匹配指定字元串的行:
$ grep –v "被查找的字元串" 文件名
6、從根目錄開始查找所有擴展名為.log的文本文件,並找出包含”ERROR”的行
find / -type f -name "*.log" | xargs grep "ERROR"
7、例子 :查找/SqLogs/access.log文件中包含".exe" 或者"TCP_DENIED"的記錄
方法1:grep /SqLogs/access.log –e ".exe”
grep /SqLogs/access.log –e "TCP_DENIED”
方法2:find /SqLogs –type f –name access.log | xargs grep ".exe"
find /SqLogs –type f –name access.log | xargs grep "TCP_DENIED"
因為公司是通過SQUID代理伺服器共享上網的,有時候因為某些原因,新版本的應用程序或者財務報稅軟體會無法使用,只有查看access.log文件,查找原因!由於LOG文件太大了,雖然每天都執行壓縮重建LOG文件,但幾十M的LOG文件里的內容太多,直接打開查看再查找很浪費時間,也很麻煩!之前用
tail –n 100 /SqLogs/access.log命令找起來也很麻煩,上面的兩個命令幫了我很大的忙,很短的時間就可以幫我找到問題所在!分享給大家!
[火星人 ] Linux下查找文件內容已經有282次圍觀