一、行數統計方法
準格爾ssl適用于網站、小程序/APP、API接口等需要進行數據傳輸應用場景,ssl證書未來市場廣闊!成為創新互聯的ssl證書銷售渠道,可以享受市場價格4-6折優惠!如果有意向歡迎電話聯系或者加微信:18982081108(備注:SSL證書合作)期待與您的合作!
1、系統命令:wc -l filename
2、grep方法:grep -c "" filename
3、sed方法:sed -n '$=' filename
4、awk方法:awk 'END{print NR}' filename
參考文件
在本文中,將展示幾種查找 Linux 目錄中的文件數量的不同方法。
統計目錄中的文件數量
統計目錄中文件的最簡單方法是使用ls每行列出一個文件,并將輸出通過管道符傳遞給wc計算數量:
[root@localhost ~]# ls -1U /etc |wc -l
執行上面的 命令 將顯示所有文件的總和,包括目錄和符號鏈接。-1選項表示每行列出一個文件,-U告訴ls不對輸出進行排序,這使 命令 的執行速度更快。ls -1U命令不計算隱藏文件。如果只想計算文件而不包括目錄,請使用以下命令:
[root@localhost ~]# ls -1Up /etc |grep -v /|wc -l
-p選項強制ls將斜杠(/)指示符附加到目錄。輸出結果通過管道符傳遞到grep -v命令,排除包含斜杠的行,并計算數量。
為了更好地控制列出的文件,使用find命令而不是ls:
[root@localhost ~]# find /etc -maxdepth 1 -type f |wc -l
-type f選項告訴find僅列出文件(包括隱藏文件),-maxdepth 1將搜索限制到第一級目錄。
遞歸統計目錄中的文件
如果想要統計目錄中的文件數量,并包括子目錄中的,可以使用find命令:
[root@localhost ~]# find /etc -type f|wc -l
用來統計文件的另一個命令是tree,它以樹狀格式列出目錄的內容:
[root@localhost ~]# yum -y install tree
[root@localhost ~]# tree /root
輸出的內容底部會顯示有多少目錄,和多少文件。
總結
在本文中,將展示幾種查找Linux目錄中的文件數量的不同方法。
在上文中,我們已經詳細介紹 linux 三劍客的基本使用,接下來我們看看具體在性能測試領域的運用,本文主要介紹的是在 Tomcat 和 Nginx access日志的統計分析。
server.xml 使用配置方式,%D-請求時間,%F-響應時間
字段說明如下:
日志樣例:
使用默認 combined 的經典格式上擴展 response_timeupstream_response_time
nginx.conf 使用配置方式:
字段說明如下:
日志示例:
為了能理解 AWK 程序,我們下面概述其基本知識。
模式( pattern ) 用于匹配輸入中的每行文本。對于匹配上的每行文本,awk 都執行對應的 動作( action )。模式和動作之間使用花括號隔開。awk 順序掃描每一行文本,并使用 記錄分隔符(一般是換行符)將讀到的每一行作為 記錄,使用 域分隔符( 一般是空格符或制表符 ) 將一行文本分割為多個 域, 每個域分別可以使用 2, … 表示。1 表示第一個域,表示第二個域,n 表示第 n 個域。 $0 表示整個記錄。模式或動作都可以不指定,缺省模式的情況下,將匹配所有行。缺省動作的情況下,將執行動作 {print},即打印整個記錄。
此處使用Nginx access.log 舉例,Tomcat 日志自己舉一反三。 使用 awk 分解出Nginx access日志中的信息
以此類推…… 當我們使用默認的域分割符時,我們可以從日志中解析出下面不同類型的信息:
我們不難發現,僅使用默認的域分隔符,不方便解析出請求行、引用頁和瀏覽器類型等其他信息,因為這些信息之中包含不確定個數的空格。 因此,我們需要把域分隔符修改為 “ ,就能夠輕松讀出這些信息。
注意:這里為了避免 Linux Shell 誤解 “ 為字符串開始,我們使用了反斜杠,轉義了 “ 。 現在,我們已經掌握了 awk 的基本知識,以及它是怎樣解析日志的。
此處使用Nginx access.log 舉例,Tomcat 日志自己舉一反三。
如果我們想知道那些類型的瀏覽器訪問過網站,并按出現的次數倒序排列,我可以使用下面的命令:
此命令行首先解析出瀏覽器域,然后使用管道將輸出作為第一個 sort 命令的輸入。第一個 sort 命令主要是為了方便 uniq 命令統計出不同瀏覽器出現的次數。最后一個 sort 命令將把之前的統計結果倒序排列并輸出。
我們可以使用下面的命令行,統計服務器返回的狀態碼,發現系統可能存在的問題。
正常情況下,狀態碼 200 或 30x 應該是出現次數最多的。40x 一般表示客戶端訪問問題。50x 一般表示服務器端問題。 下面是一些常見的狀態碼:
HTTP 協議狀態碼定義可以參閱:
查找并顯示所有狀態碼為 404 的請求
統計所有狀態碼為 404 的請求
現在我們假設某個請求 ( 例如 : URI: /path/to/notfound ) 產生了大量的 404 錯誤,我們可以通過下面的命令找到這個請求是來自于哪一個引用頁,和來自于什么瀏覽器。
有時候會發現其他網站出于某種原因,在他們的網站上使用保存在自己網站上的圖片。如果您想知道究竟是誰未經授權使用自己網站上的圖片,我們可以使用下面的命令:
注意:使用前,將 修改為自己網站的域名。
統計共有多少個不同的 IP 訪問:
統計每一個 IP 訪問了多少個頁面:
將每個 IP 訪問的頁面數進行從小到大排序:
統計 2018 年 8 月 31 日 14 時內有多少 IP 訪問 :
統計訪問最多的前十個 IP 地址
查看某一個 IP訪問了哪些頁面:
統計某個 IP 的詳細訪問情況,按訪問頻率排序
列出傳輸大小最大的幾個文件
列出輸出大于 204800 byte ( 200kb) 的頁面以及對應頁面發生次數
列出訪問最頻的頁面(TOP100)
列出訪問最頻的頁面([排除php頁面】(TOP100)
列出頁面訪問次數超過100次的頁面
列出最近1000條記錄,訪問量最高的頁面
統計每分鐘的請求數,top100的時間點(精確到分鐘)
統計每小時的請求數,top100的時間點(精確到小時)
統計每秒的請求數,top100的時間點(精確到秒)
統計當天的 pv
說明:
可以使用下面的命令統計出所有響應時間超過 3 秒的日志記錄。
注意:NF 是當前記錄中域的個數。$NF 即最后一個域。
列出php頁面請求時間超過3秒的頁面,并統計其出現的次數,顯示前100條
列出相應時間超過 5 秒的請求,顯示前20條
統計蜘蛛抓取次數
統計蜘蛛抓取404的次數
通過本文的介紹,我相信同學們一定會發現 linux三劍客強大之處。在命令行中,它還能夠接受,和執行外部的 AWK 程序文件,可以對文本信息進行非常復雜的處理,可以說“只有想不到的,沒有它做不到的”。
網站名稱:linux命令統計次數 linux統計出現次數
標題鏈接:http://www.yijiale78.com/article46/hhigeg.html
成都網站建設公司_創新互聯,為您提供動態網站、云服務器、網站建設、全網營銷推廣、標簽優化、靜態網站
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯