linux命令統計文件中某個字符串出現的次數


1、使用grep

linux grep命令在我的隨筆linux分類里有過簡單的介紹,這里就只簡單的介紹下使用grep命令統計某個文件這某個字符串出現的次數,首先介紹grep命令的幾個參數,詳細參數請自行找資料學習。

  • -a 或 --text : 不要忽略二進制的數據。
  • -A<顯示行數> 或 --after-context=<顯示行數> : 除了顯示符合范本樣式的那一列之外,並顯示該行之后的內容。
  • -b 或 --byte-offset : 在顯示符合樣式的那一行之前,標示出該行第一個字符的編號。
  • -B<顯示行數> 或 --before-context=<顯示行數> : 除了顯示符合樣式的那一行之外,並顯示該行之前的內容。
  • -c 或 --count : 計算符合樣式的列數。
  • -C<顯示行數> 或 --context=<顯示行數>或-<顯示行數> : 除了顯示符合樣式的那一行之外,並顯示該行之前后的內容。
  • -d <動作> 或 --directories=<動作> : 當指定要查找的是目錄而非文件時,必須使用這項參數,否則grep指令將回報信息並停止動作。

這里統計某個字符串在文件里出現的次數使用到了-c參數,請見下圖案例:

語法:grep -c  'object'   fileName

案例里使用的文件:flycua-cn.19-12-13.log ,用來做統計的字符串:403

 

 2、使用zgrep

服務器端常有很多壓縮過的日志文件,當需要查找日志中某些特定信息的時候,為了避免解壓文件,可以使用zgrep,zcat等命令查找、查看壓縮文件中的信息。

語法:zgrep -c  '要統計的字符串'   文件

案例里使用的文件:flycua-cn.19-12-11.log.gz ,用來做統計的字符串:403

 3、使用vim統計

用vim打開目標文件,在命令模式下,輸入::%s/object/&/gn

&代表s// 搜索出來的內容
g代表全局替換(而非僅僅當前行)
n代表不執行,只是預覽一下會有什么情況發生

執行前效果和執行后效果如圖所示:

 4、使用grep結合wc命令來統計文件中某個字符串出現的個數

 Linux wc命令用於計算字數。

利用wc指令我們可以計算文件的Byte數、字數、或是列數,若不指定文件名稱、或是所給予的文件名為"-",則wc指令會從標准輸入設備讀取數據。

 參數

  • -c或--bytes或--chars 只顯示Bytes數。
  • -l或--lines 只顯示行數。
  • -w或--words 只顯示字數。
  • --help 在線幫助。
  • --version 顯示版本信息。

grep結合wc命令:

語法:grep 'object' fileName | wc -l

案例里使用的文件:flycua-cn.19-12-13.log ,用來做統計的字符串:403

 

 

只總結了自己在工作中常用的幾個,希望能夠提供幫助!!!

 

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM