find,用于在文件樹中查找文件并作相應的處理
目前創(chuàng)新互聯公司已為1000多家的企業(yè)提供了網站建設、域名、虛擬空間、綿陽服務器托管、企業(yè)網站設計、井研網站維護等服務,公司將堅持客戶導向、應用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協力一起成長,共同發(fā)展。
-name:按照文件名查找文件
-perm:按照文件權限查找文件
-user:按照文件屬主來查找文件
-size:按照指定的文件大小查找文件【+n:大于,-n:小于,n:等于】
-group:按照文件所屬的組來查找文件
-mtime-n+n:按照文件更改時間來查找文件,-n表示n天之內,+n表示n天以前
-newer file1 file2:查找更改時間在file1和file2之間的文件
例如:
find -mtime -2:查找48小時修改過的文件
find -name ".log":查找當前目錄以".log"結尾的文件
find /opt/soft/test -perm 777:查找指定目錄下權限為777的文件
find -type f -name "*.log":查找當前目錄下以".log"結尾的普通文件
find -type d | sort:查找當前所有目標目錄并排序
find /home/wansw -size +20M:查找大于20M的文件
locate指令,可以快速定位文件路徑,利用事先建立的系統中的所有文件名稱和路徑的locate數據庫,無需遍歷整個文件系統,查詢速度較快,為了保證查詢準確性,需要定期更新?!禠inux就該這么學》
updatedb:第一次運行前,創(chuàng)建locate數據庫
grep,用于過濾/搜索指定字符串??梢允褂谜齽t表達式,能配合多種命令使用。
用法:grep 【選項】 查找內容 源文件
-A:顯示符合的行及之后的內容
-B:顯示符合的行及之前的內容
-C:顯示符合的行及前后的內容
-c:計算符合的行數目
-n:顯示匹配行和行號
-i:忽略大小寫
規(guī)則表達式
:'grep'表示匹配所有以grep開頭的行
'表示匹配所有以grep結尾的行
.:'gr.p'表示匹配'gr'后面接任意字符然后是'p'
:'grep'表示匹配一個或多個空格后緊跟grep的行
[]:[Gg]rep表示匹配Grep與grep
[]:[A-FH-Z]rep表示匹配不以A-F、H-Z開頭并緊跟rep的行
例如(grep命令大多數時候多要和別的命令一起使用才有意義):
ps -ef | grep -c SVN:查找指定的進程的個數
cat test.txt | grep -f test2.txt:從text2.txt中讀取關鍵字后在test.txt中搜索
cat test.txt | grep nf text2.txt:從text2.txt中讀取關鍵字后在text.txt中搜索并顯示行號
grep 'linux' text.txt test2.txt:從多個文件中搜索關鍵字'linux'
cat test.txt | grep -E 'ed|at':顯示包含ed或at的行
linux
-
awk命令之NF和$NF區(qū)別linux
-
awk命令之NF和$NF區(qū)別
NF和$NF
區(qū)別問答:1.awk中$NF是什么意思?#pwd/usr/local/etc~#
echo
$PWD
|
awk
-F/
$NF}'etcNF代表:瀏覽記錄的域的個數$NF代表
:最后一個Field(列)2.awk下面的變量NF和$NF有什么區(qū)別?{print
NF}
也有{print
$NF}前者是輸出了域個數,后者是輸出最后一個字段的內容如:~#
echo
$PWD
|
awk
-F/
$NF}'
在上文中,我們已經詳細介紹 linux 三劍客的基本使用,接下來我們看看具體在性能測試領域的運用,本文主要介紹的是在 Tomcat 和 Nginx access日志的統計分析。
server.xml 使用配置方式,%D-請求時間,%F-響應時間
字段說明如下:
日志樣例:
使用默認 combined 的經典格式上擴展 response_timeupstream_response_time
nginx.conf 使用配置方式:
字段說明如下:
日志示例:
為了能理解 AWK 程序,我們下面概述其基本知識。
模式( pattern ) 用于匹配輸入中的每行文本。對于匹配上的每行文本,awk 都執(zhí)行對應的 動作( action )。模式和動作之間使用花括號隔開。awk 順序掃描每一行文本,并使用 記錄分隔符(一般是換行符)將讀到的每一行作為 記錄,使用 域分隔符( 一般是空格符或制表符 ) 將一行文本分割為多個 域, 每個域分別可以使用 2, … 表示。1 表示第一個域,表示第二個域,n 表示第 n 個域。 $0 表示整個記錄。模式或動作都可以不指定,缺省模式的情況下,將匹配所有行。缺省動作的情況下,將執(zhí)行動作 {print},即打印整個記錄。
此處使用Nginx access.log 舉例,Tomcat 日志自己舉一反三。 使用 awk 分解出Nginx access日志中的信息
以此類推…… 當我們使用默認的域分割符時,我們可以從日志中解析出下面不同類型的信息:
我們不難發(fā)現,僅使用默認的域分隔符,不方便解析出請求行、引用頁和瀏覽器類型等其他信息,因為這些信息之中包含不確定個數的空格。 因此,我們需要把域分隔符修改為 “ ,就能夠輕松讀出這些信息。
注意:這里為了避免 Linux Shell 誤解 “ 為字符串開始,我們使用了反斜杠,轉義了 “ 。 現在,我們已經掌握了 awk 的基本知識,以及它是怎樣解析日志的。
此處使用Nginx access.log 舉例,Tomcat 日志自己舉一反三。
如果我們想知道那些類型的瀏覽器訪問過網站,并按出現的次數倒序排列,我可以使用下面的命令:
此命令行首先解析出瀏覽器域,然后使用管道將輸出作為第一個 sort 命令的輸入。第一個 sort 命令主要是為了方便 uniq 命令統計出不同瀏覽器出現的次數。最后一個 sort 命令將把之前的統計結果倒序排列并輸出。
我們可以使用下面的命令行,統計服務器返回的狀態(tài)碼,發(fā)現系統可能存在的問題。
正常情況下,狀態(tài)碼 200 或 30x 應該是出現次數最多的。40x 一般表示客戶端訪問問題。50x 一般表示服務器端問題。 下面是一些常見的狀態(tài)碼:
HTTP 協議狀態(tài)碼定義可以參閱:
查找并顯示所有狀態(tài)碼為 404 的請求
統計所有狀態(tài)碼為 404 的請求
現在我們假設某個請求 ( 例如 : URI: /path/to/notfound ) 產生了大量的 404 錯誤,我們可以通過下面的命令找到這個請求是來自于哪一個引用頁,和來自于什么瀏覽器。
有時候會發(fā)現其他網站出于某種原因,在他們的網站上使用保存在自己網站上的圖片。如果您想知道究竟是誰未經授權使用自己網站上的圖片,我們可以使用下面的命令:
注意:使用前,將 修改為自己網站的域名。
統計共有多少個不同的 IP 訪問:
統計每一個 IP 訪問了多少個頁面:
將每個 IP 訪問的頁面數進行從小到大排序:
統計 2018 年 8 月 31 日 14 時內有多少 IP 訪問 :
統計訪問最多的前十個 IP 地址
查看某一個 IP訪問了哪些頁面:
統計某個 IP 的詳細訪問情況,按訪問頻率排序
列出傳輸大小最大的幾個文件
列出輸出大于 204800 byte ( 200kb) 的頁面以及對應頁面發(fā)生次數
列出訪問最頻的頁面(TOP100)
列出訪問最頻的頁面([排除php頁面】(TOP100)
列出頁面訪問次數超過100次的頁面
列出最近1000條記錄,訪問量最高的頁面
統計每分鐘的請求數,top100的時間點(精確到分鐘)
統計每小時的請求數,top100的時間點(精確到小時)
統計每秒的請求數,top100的時間點(精確到秒)
統計當天的 pv
說明:
可以使用下面的命令統計出所有響應時間超過 3 秒的日志記錄。
注意:NF 是當前記錄中域的個數。$NF 即最后一個域。
列出php頁面請求時間超過3秒的頁面,并統計其出現的次數,顯示前100條
列出相應時間超過 5 秒的請求,顯示前20條
統計蜘蛛抓取次數
統計蜘蛛抓取404的次數
通過本文的介紹,我相信同學們一定會發(fā)現 linux三劍客強大之處。在命令行中,它還能夠接受,和執(zhí)行外部的 AWK 程序文件,可以對文本信息進行非常復雜的處理,可以說“只有想不到的,沒有它做不到的”。
linux輸出文件有幾列可以使用 cat filename | awk '{print NF}' 命令可以得到每一行對應有多少列。
例如文件a.txt的內容為:
你好? 北京? 天安門
1 2 3 4
1 2 3 4 5
輸入并執(zhí)行cat a.txt | awk '{print NF}' 得出以下結果:
3
4
5
輸出結果分別代表第一行有3列,第二行有4列,第三行有5列。
1、Linux是一套免費使用和自由傳播的類Unix操作系統,是一個基于POSIX和Unix的多用戶、多任務、支持多線程和多CPU的操作系統。伴隨著互聯網的發(fā)展,Linux得到了來自全世界軟件愛好者、組織、公司的支持。
它除了在服務器操作系統方面保持著強勁的發(fā)展勢頭以外,在個人電腦、嵌入式系統上都有著長足的進步。使用者不僅可以直觀地獲取該操作系統的實現機制,而且可以根據自身的需要來修改完善這個操作系統,使其最大化地適應用戶的需要。
2、AWK是一個優(yōu)良的文本處理工具,Linux及Unix環(huán)境中現有的功能最強大的數據處理引擎之一。這種編程及數據操作語言的最大功能取決于一個人所擁有的知識。awk經過改進生成的新的版本nawk,gawk,現在默認linux系統下日常使用的是gawk,用命令可以查看正在應用的awk的來源(ls -l /bin/awk )
擴展資料:
linux主要特性:
1、完全兼容POSIX1.0標準
這使得可以在Linux下通過相應的模擬器運行常見的DOS、Windows的程序。這為用戶從Windows轉到Linux奠定了基礎。許多用戶在考慮使用Linux時,就想到以前在Windows下常見的程序是否能正常運行,這一點就消除了他們的疑慮。
2、多用戶、多任務
Linux支持多用戶,各個用戶對于自己的文件設備有自己特殊的權利,保證了各用戶之間互不影響。多任務則是現在電腦最主要的一個特點,Linux可以使多個程序同時并獨立地運行。
3、良好的界面
Linux同時具有字符界面和圖形界面。在字符界面用戶可以通過鍵盤輸入相應的指令來進行操作。它同時也提供了類似Windows圖形界面的X-Window系統,用戶可以使用鼠標對其進行操作。在X-Window環(huán)境中就和在Windows中相似,可以說是一個Linux版的Windows。
4、支持多種平臺
Linux可以運行在多種硬件平臺上,如具有x86、680x0、SPARC、Alpha等處理器的平臺。此外Linux還是一種嵌入式操作系統,可以運行在掌上電腦、機頂盒或游戲機上。2001年1月份發(fā)布的Linux 2.4版內核已經能夠完全支持Intel64位芯片架構。同時Linux也支持多處理器技術。多個處理器同時工作,使系統性能大大提高。
參考資料來源:
百度百科-Awk
百度百科-linux
當前題目:Linuxnf命令 linuxfg命令
文章出自:http://m.rwnh.cn/article18/doopegp.html
成都網站建設公司_創(chuàng)新互聯,為您提供外貿建站、虛擬主機、Google、網站設計公司、微信公眾號、App設計
聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯