1. 程式人生 > >linux查詢檔案內容grep

linux查詢檔案內容grep

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命令找起來也很麻煩,上面的兩個命令幫了我很大的忙,很短的時間就可以幫我找到問題所在!分享給大家!