在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

常用的大日志文件查詢命令詳解

馬哥Linux運維 ? 來源:稀土掘金技術社區 ? 2024-01-02 11:27 ? 次閱讀

一、前言

最近需要查詢大日志文件的時候,每次打開vim,cat之類的都會卡死,但是需要查看符合條件的共有多少行數據,這顆愁死我了,下面列出一些常用的匹配查詢命令。

二、常用的搜索命令

1、grep搜索

      grep 參數 文件名 | head     //從頭查找
      grep 參數 文件名 | wc- l    //查看符合條件的有多少行
      cat 文件名 |grep 參數$  //輸出以該參數結尾的行內容


2、實例

(1)根據具體的參數來搜索行數


cat /data/weblogs/xxx.access.log  |grep "GET /pixel.jpg?"|wc -l 
      4102386

(2)部分正則查詢


    cat /data/weblogs/em.evony.com.access.log |grep "25/Nov/2019[00-59]" |wc -l 
    120

查詢25/Nov/2019:15時的所有數據,那么15時后面的分鐘數就是00-59

(3)多個條件之間可以使用管道連接,查詢同時符合兩個條件的行數


    cat /data/weblogs/xxx.log |grep "25/Nov/2019[00-59]" |grep "GET /pixel.jpg?"|wc -l 


    120

(4)查詢符合條件1或者符合條件2 的行數


    cat /data/weblogs/xxx.log |grep -E "25/Nov/2019[00-59] |GET /pixel.jpg?"|wc -l 
      4098135


簡寫: grep -E "exp1|exp2|exp3" | wc -l
參考:https://blog.csdn.net/lijing742180/article/details/84959963

3、grep是模糊查詢

在使用grep搜索端口號的時候,查出來的結果不盡人意,什么牛鬼蛇神都查出來了,例子如下:


netstat -anp |grep -i '80'
(Not all processes could be identified, non-owned process info
 will not be shown, you would have to be root to see it all.)
tcp        0      0 127.0.0.1:80                0.0.0.0:*                   LISTEN      -                   
tcp        0      0 10.17.2.50:80               0.0.0.0:*                   LISTEN      -                   
tcp        0      0 216.66.17.189:80            0.0.0.0:*                   LISTEN      -                   
tcp        0      0 10.17.2.50:10050            10.17.13.2:33801            TIME_WAIT   -    
          

推薦個更好用的,具體查詢80端口的使用情況,使用命令:

 netstat -apn | awk '{split($4,arr,":"); if(arr[2] == "80") print $0}'

一步到位,查出來的都是80端口的進程,十分好用。

============ 2019/12/5===================

三、搜索文件中的ip地址

1、匹配ip


grep -Eo '([^0-9]|)((1[0-9]{2}|2[0-4][0-9]|25[0-5]|[1-9][0-9]|[0-9]).){3}(1[0-9][0-9]|2[0-4][0-9]|25[0-5]|[1-9][0-9]|[0-9])([^0-9]|)' xxx.log | sed -nr 's/([^0-9]|)(([0-9]{1,3}.){3}[0-9]{1,3})([^0-9]|)/2/p'|wc -l


31116275

2、查詢每個ip出現的次數


grep -E -o "(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?).(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?).(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?).(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)"  xxx.log |sort|uniq -c


      2 99.203.87.103
      2 99.203.87.142
      4 99.203.87.145
      8 99.203.87.153

前面是出現次數,后面是ip

3、更精準的匹配ip


grep -E -o "(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?).(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?).(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?).(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)"  xxx.log|wc -l


32929372

4、模糊匹配ip


grep -E -o "([0-9]{1,3}[.]){3}[0-9]{1,3}" xxx.log|wc -l

32930309

5、多個條件查詢ip,先根據限定條件獲取指定的行數,然后再搜索ip的個數


cat xxx.log |grep "25/Nov/2019[00-59]" |grep "GET /pixel.jpg?"|grep -E -o "([0-9]{1,3}[.]){3}[0-9]{1,3}"|wc -l 
1110

感覺這些查ip的方法都差不錯,因為日志文件一直在增大,所以查出來的結果也不一樣,查的速度也比較慢,可能是文件太大了,在此記錄一下,總有用得著的時候。

審核編輯:湯梓紅

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • Linux
    +關注

    關注

    87

    文章

    11345

    瀏覽量

    210395
  • 文件
    +關注

    關注

    1

    文章

    570

    瀏覽量

    24822
  • 命令
    +關注

    關注

    5

    文章

    696

    瀏覽量

    22109
  • 日志
    +關注

    關注

    0

    文章

    139

    瀏覽量

    10679

原文標題:linux使用grep條件搜索大文件的行數等技巧

文章出處:【微信號:magedu-Linux,微信公眾號:馬哥Linux運維】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    linux 查日志常用命令有哪些

    linux 查日志常用命令
    發表于 06-04 09:00

    Linux文件內容查詢命令

    Linux文件內容查詢命令 Linux文件內容查詢命令  grep、fgrep和egrep
    發表于 01-18 12:45 ?859次閱讀

    Linux關機命令詳解

    Linux關機命令詳解 在linux下一些常用的關機/重啟命令有shutdown、halt、reboot、及init,它們都 可以達到重啟系統的目的,但每個
    發表于 01-18 12:52 ?3639次閱讀

    Oracle核心技術之控制文件日志文件

    控制文件日志文件是Oracle數據庫中儲存信息的重要文件。控制文件用來存放數據庫的名字、數據文件
    發表于 03-26 11:03 ?2次下載

    LINUX操作系統的安裝與Linux常用文件命令

    LINUX操作系統的安裝與Linux常用文件命令說明。
    發表于 06-02 17:45 ?3次下載

    詳解MySQL三大日志的作用

    MySQL日志 主要包括錯誤日志查詢日志、慢查詢日志、事務
    的頭像 發表于 07-22 14:44 ?1389次閱讀

    Python常用的幾個命令介紹

    Python是一種功能強大的編程語言,廣泛用于數據分析、人工智能和Web開發等領域。在使用Python時,需要掌握一些基本的命令,以便更好地管理和運行代碼。下面將介紹Python常用的幾個命令
    的頭像 發表于 06-21 17:12 ?2406次閱讀

    kafka相關命令詳解

    kafka常用命令詳解
    的頭像 發表于 10-20 11:34 ?1001次閱讀

    linux解壓gz文件命令

    “gzip 源文件”;例壓縮“b.txt”文件,執行命令“gzip b.txt”即可。想要解壓文件,就執行“gzip -d 壓縮文件”或“g
    的頭像 發表于 11-08 14:42 ?5817次閱讀

    linux常用命令及用法

    Linux是一種開源的操作系統,它以穩定、高效和安全的特點受到廣大用戶的喜愛。掌握Linux的常用命令及其用法對于操作系統的管理和開發都至關重要。本文將詳盡、詳實、細致地介紹Linux常用命令及其
    的頭像 發表于 11-17 09:47 ?722次閱讀

    logcat命令抓取日志方法

    命令抓取日志 logcat -b main -b system -b crash -r 1024 -n 5 -f android.log -v threadtime -b:加載可供查看的緩沖區的日志
    的頭像 發表于 11-23 17:31 ?1300次閱讀
    logcat<b class='flag-5'>命令</b>抓取<b class='flag-5'>日志</b>方法

    redis容器內怎么查看redis日志

    redis容器內如何查看redis日志的幾種方法。 方法一:通過docker logs命令查看容器日志 docker logs命令是查看容器日志
    的頭像 發表于 12-05 10:10 ?3838次閱讀

    linux日志管理之journalctl命令

    journalctl 用來查詢 systemd-journald 服務收集到的日志。systemd-journald 服務是 systemd init 系統提供的收集系統日志的服務。
    的頭像 發表于 08-14 18:18 ?2827次閱讀
    linux<b class='flag-5'>日志</b>管理之journalctl<b class='flag-5'>命令</b>

    詳解kubectl常用命令

    詳解kubectl常用命令
    的頭像 發表于 11-05 15:39 ?350次閱讀
    <b class='flag-5'>詳解</b>kubectl<b class='flag-5'>常用命令</b>

    Linux實時查看日志的四種命令詳解

    如何在Linux中實時查看日志文件的內容?那么有很多實用程序可以幫助用戶在文件更改或不斷更新時輸出文件的內容。在Linux中實時顯示文件內容
    的頭像 發表于 01-13 10:45 ?278次閱讀
    Linux實時查看<b class='flag-5'>日志</b>的四種<b class='flag-5'>命令</b><b class='flag-5'>詳解</b>
    主站蜘蛛池模板: 18岁女人毛片 | 日本黄色免费 | 久久久久久久久久久9精品视频 | luxu259在线中文字幕 | 在线看av网址 | 天天综合网天天做天天受 | 性久久久久 | 男人天堂网2021 | 美女扒开尿口给男人桶 | 四虎网站 | 三级国产在线观看 | 欧美人成网 | 欧美最猛性xxxx高清 | 欧美日一区二区三区 | 亚洲色图综合图区 | 国产福利午夜 | 777奇米影视笫四色88me久久综合 | 男人搡女人视频免费看 | 黑人一区二区三区中文字幕 | 色香蕉视频| 婷婷久久五月天 | 日韩欧美印度一级毛片 | 免费看一级视频 | 日日干夜夜欢 | 拍拍拍成人免费高清视频 | ssswww日本免费网站片 | 99国产福利| 色天使色护士 在线视频观看 | 男人你懂的在线观看视频 | 久久久久久久久久久9精品视频 | 五月欧美激激激综合网色播 | 国模私拍一区二区三区 | 天天看片夜夜爽 | 国产亚洲精品久久久极品美女 | 国产免费久久精品 | 六月婷婷久久 | 狠狠色噜噜狠狠色综合久 | 俺去插| 天天色成人网 | 女人被两根一起进3p在线观看 | 国产不卡毛片 |