??作為一名測(cè)試工程師,測(cè)試任務(wù)中和Linux打交道的地方有很多,比如查看日志、定位bug、修改文件、部署環(huán)境等。產(chǎn)品部署在Linux上,如果某個(gè)功能發(fā)生錯(cuò)誤,就需要我們?nèi)ヅ挪槌鲥e(cuò)的原因,所以熟練的掌握查看log的方法顯得尤為重要。
成都創(chuàng)新互聯(lián)是專(zhuān)業(yè)的鄞州網(wǎng)站建設(shè)公司,鄞州接單;提供成都網(wǎng)站設(shè)計(jì)、網(wǎng)站建設(shè),網(wǎng)頁(yè)設(shè)計(jì),網(wǎng)站設(shè)計(jì),建網(wǎng)站,PHP網(wǎng)站建設(shè)等專(zhuān)業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進(jìn)行鄞州網(wǎng)站開(kāi)發(fā)網(wǎng)頁(yè)制作和功能擴(kuò)展;專(zhuān)業(yè)做搜索引擎喜愛(ài)的網(wǎng)站,專(zhuān)業(yè)的做網(wǎng)站團(tuán)隊(duì),希望更多企業(yè)前來(lái)合作!
??談到查看log的方法,最常使用的命令可以說(shuō)是cat與more及l(fā)ess了,但是如果查看一個(gè)很大的文件,并且只想看到該文件最后幾行的結(jié)果輸出時(shí),你還記得用什么嗎?對(duì)了,就是tail,此外tac也可以達(dá)到這個(gè)目的。接下來(lái)文章將通過(guò)實(shí)例來(lái)講解各個(gè)查看日志的命令。
想要直接查看一個(gè)文件的內(nèi)容,可以使用cat/tac/nl命令行。
??在一般情況下,使用[tab]與空格鍵的效果差不多,都是一堆空白,無(wú)法區(qū)分出兩者,但是如果使用cat -A 就能夠發(fā)現(xiàn)空白的地方到底是什么,其中[tab]是以^I表示,換行符則是以$表示。當(dāng)文件內(nèi)容的行數(shù)超過(guò)40行以上時(shí),根本來(lái)不及在屏幕上看到結(jié)果。所以cat配合less或者more是不錯(cuò)的選擇。
??nl可以將輸出的文件內(nèi)容自動(dòng)地加上行號(hào),其默認(rèn)的結(jié)果與cat -n不太一樣,nl可以將行號(hào)做比較多的顯示設(shè)計(jì),包括位數(shù)與是否自動(dòng)補(bǔ)齊0等的功能。
??想要一頁(yè)一頁(yè)的查看文件的內(nèi)容,可以使用more和less命令。
??對(duì)比less和more,less的用法更加的靈活,more的缺點(diǎn)是沒(méi)有辦法向前翻頁(yè),只能往后翻,但是less既能往后翻也能往前翻頁(yè)。
??如果只想關(guān)注日志內(nèi)容的前一段或者最后一段的內(nèi)容,使用head/tail。
??幾種查看log的方式總結(jié)的也差不多了,想要熟練的使用還需要多練。
1.看下http.conf的配置中日志放在那里\x0d\x0a 比如:egrep -v '#|^$' /etc/httpd/conf/httpd.conf |grep log\x0d\x0a\x0d\x0a2.進(jìn)入響應(yīng)的日志保持目錄\x0d\x0a cat access_log\x0d\x0a cat error_log
1、連接上相應(yīng)的linux主機(jī),進(jìn)入到等待輸入shell指令的linux命令行狀態(tài)下。
2、在命令行下輸入shell指令:sz /var/log/boot.log,此時(shí)會(huì)彈出下載位置選擇。
3、點(diǎn)擊確定,此時(shí)會(huì)看到日志被成功導(dǎo)出了。
tail -f 日志文件路徑主要用于查看實(shí)時(shí)的日志記錄,屬于動(dòng)態(tài)記錄查看。
cat日志路徑主要用于查看靜態(tài)的歷史日志記錄,一般跟路徑名稱(chēng),常見(jiàn)的這周類(lèi)型的日志記錄一般用管道符進(jìn)行過(guò)濾篩選自己所需的記錄。
dmesg主要用于調(diào)試腳本或者命令,出現(xiàn)異常中斷來(lái)排查錯(cuò)誤原因顯示的。
tail? -n? 10? test.log,查詢(xún)?nèi)罩疚膊孔詈?0行的日志。
tail -n +10 test.log,查詢(xún)10行之后的所有日志。
head -n 10? test.log,查詢(xún)?nèi)罩疚募械念^10行日志。
head -n -10? test.log,查詢(xún)?nèi)罩疚募俗詈?0行的其他所有日志。
操作命令
首先介紹一個(gè)名詞“控制臺(tái)(console)”,它就是我們通常見(jiàn)到的使用字符操作界面的人機(jī)接口,例如dos。我們說(shuō)控制臺(tái)命令,就是指通過(guò)字符界面輸入的可以操作系統(tǒng)的命令。
例如dos命令就是控制臺(tái)命令。要了解的是基于Linux操作系統(tǒng)的基本控制臺(tái)命令。有一點(diǎn)一定要注意,和dos命令不同的是,Linux的命令(也包括文件名等等)對(duì)大小寫(xiě)是敏感的,也就是說(shuō),如果你輸入的命令大小寫(xiě)不對(duì)的話,系統(tǒng)是不會(huì)做出你期望的響應(yīng)的。