網(wǎng)站首頁 編程語言 正文
前言
當(dāng)日志存儲文件很大時,我們就不能用 vi 直接去查看日志了,就需要Linux的一些內(nèi)置命令去查看日志文件.
系統(tǒng)Log日志位置:
/var/log/message 系統(tǒng)啟動后的信息和錯誤日志,是Red Hat Linux中最常用的日志之一
/var/log/secure 與安全相關(guān)的日志信息
/var/log/maillog 與郵件相關(guān)的日志信息
/var/log/cron 與定時任務(wù)相關(guān)的日志信息
/var/log/spooler 與UUCP和news設(shè)備相關(guān)的日志信息
/var/log/boot.log 守護(hù)進(jìn)程啟動和停止相關(guān)的日志消息
一、cat命令:
參數(shù): -n 或 --number 由 1 開始對所有輸出的行數(shù)編號 -b 或 --number-nonblank 和 -n 相似,只不過對于空白行不編號 -s 或 --squeeze-blank 當(dāng)遇到有連續(xù)兩行以上的空白行,就代換為一行的空白行 -v 或 --show-nonprinting -E --show-ends 在每行結(jié)束處顯示 $ -e --等價于-vE cat主要有三大功能: 1. $ cat filename 一次顯示整個文件。 2. $ cat > filename 從鍵盤創(chuàng)建一個文件。(只能創(chuàng)建新文件,不能編輯已有文件) 3. $ cat filename1 filename2 > filename 將幾個文件合并為一個文件(如果原本file文件中有內(nèi)容,會被覆 蓋掉) 蓋掉) 例: 把 file1 的內(nèi)容加上行號后輸入到 file2 這個文件里 cat -n filename1 > filename2 把 file1 和 file2 的內(nèi)容加上行號(空白行不加)之后將內(nèi)容追加到 file3 里 cat -b filename1 filename2 >> filename3 把test.txt文件扔進(jìn)垃圾箱,賦空值test.txt cat /dev/null > /etc/test.txt 注意:>意思是創(chuàng)建,>>是追加。千萬不要弄混了。
二、more命令:
more 命令是一個基于vi編輯器文本過濾器,它以全屏幕的方式按頁顯示文本文件的內(nèi)容,支持vi中的關(guān)鍵字定位操作。 該命令一次顯示一屏文本信息,滿屏后停下來,以百分比的形式,以上下翻頁,以上下行移動顯示查看日志并且在屏幕 的底部給出一個提示信息,從開始至當(dāng)前己顯示的該文件的百分比:–More–(XX%) **按鍵 **說明** 按Space鍵: 顯示文本的下一屏內(nèi)容。 按B鍵: 顯示上一屏內(nèi)容。 按Enter鍵: 只顯示文本的下一行內(nèi)容。 按斜線符: 接著輸入一個模式,可以在文本中尋找下一個相匹配的模式。 按H鍵: 顯示幫助屏,該屏上有相關(guān)的幫助信息。 按Q鍵: 退出more命令
三、less命令:
less 命令查看日志,和more命令類似,只不過less支持上下鍵前后翻閱文件。
四、head命令:
參數(shù): -q 隱藏文件名 -v 顯示文件名 -c 顯示字節(jié)數(shù) -n 顯示的行數(shù) 從文本文件的頭部開始查看,head 命令用于查看一個文本文件的開頭部分。 例: head filename 或 head -n 10 顯示文本文件 file 的前十行內(nèi)容,然后退出命令 head -n 20 filename 顯示文本文件 file 的前二十行內(nèi)容 head -n -10 filename 顯示文本文件除了最后10行的其他所有文本文件信息
五、tail命令:
tail 命令用于顯示文本文件的末尾內(nèi)容(默認(rèn)10行,相當(dāng)于增加參數(shù) -n 10),并且實時不斷有內(nèi)容被打印出來, 若想中斷進(jìn)程,使用命令 Ctrl-C 參數(shù): tail [ -f ] [ -c Number | -n Number | -m Number | -b Number | -k Number ] [ File ] 參數(shù)解釋: -f 該參數(shù)用于監(jiān)視File文件增長。 -c Number 從 Number 字節(jié)位置讀取指定文件 -n Number 從 Number 行位置讀取指定文件。 -m Number 從 Number 多字節(jié)字符位置讀取指定文件,比方你的文件假設(shè)包括中文字,假設(shè)指定-c參數(shù),可能導(dǎo)致 截斷,但使用-m則會避免該問題。 -b Number 從 Number 表示的512字節(jié)塊位置讀取指定文件。 -k Number 從 Number 表示的1KB塊位置讀取指定文件。 File 指定操作的目標(biāo)文件名稱 上述命令中,都涉及到number,假設(shè)不指定,默認(rèn)顯示10行。Number前面可使用正負(fù)號,表示該偏移從頂部還是從尾 部開始計算。 tail 可運(yùn)行文件一般在/usr/bin/以下。 tail -f filename 監(jiān)視filename文件的尾部內(nèi)容(默認(rèn)10行,相當(dāng)于增加參數(shù) -n 10) tail -100f filename 監(jiān)視filename文件的尾部內(nèi)容(默認(rèn)從底部往前100行,相當(dāng)于增加參數(shù) -n 100) tail -n 20 filename 顯示filename最后20行 tail -r -n 10 filename 逆序顯示filename最后10行
六、tac命令:
tac (反向查看日志,會打開整個文件,倒序顯示,不常用) tac 是將 cat 反寫過來,所以他的功能就跟 cat 相反。 cat 是由第一行到最后一行連續(xù)顯示在屏幕上,而 tac 則是由最后一行到第一行反向在螢?zāi)簧巷@示出來
七、echo命令:
echo 命令用來在標(biāo)準(zhǔn)輸出上顯示一段字符 echo [ -n ] 字符串其中選項n表示輸出文字后不換行;字符串能加引號,也能不加引號 echo "the echo command test!" echo "the echo command test!">filename 輸出內(nèi)容到文件 用 echo 命令輸出加引號的字符串時,將字符串原樣輸出 用 echo 命令輸出不加引號的字符串時,將字符串中的各個單詞作為字符串輸出,各字符串之間用一個空格分割
八、grep命令:
grep 同時滿足多個關(guān)鍵字和滿足任意關(guān)鍵字,是一種強(qiáng)大的文本搜索工具,它能使用正則表達(dá)式搜索文本,并把匹 配的行打印出來。grep全稱是Global Regular Expression Print,表示全局正則表達(dá)式版本,顯示完自動退 出命令 grep [options] 參數(shù): [options]參數(shù): -c:只輸出匹配行的計數(shù) -I:不區(qū)分大 小寫(只適用于單字符) -h:查詢多文件時不顯示文件名 -l:查詢多文件時只輸出包含匹配字符的文件名 -n:顯示匹配行及 行號 -s:不顯示不存在或無匹配文本的錯誤信息 -v:顯示不包含匹配文本的所有行 -A: 顯示匹配行及前面多少行, 如: -A3, 則表示顯示匹配行及前3行 -B: 顯示匹配行及后面多少行, 如: -B3, 則表示顯示匹配行及后3行 -C: 顯示匹配行前后多少行, 如: -C3, 則表示顯示批量行前后3行 pattern正則表達(dá)式主要參數(shù): : 忽略正則表達(dá)式中特殊字符的原有含義 ^:匹配正則表達(dá)式的開始行 $: 匹配正則表達(dá)式的結(jié)束行 <:從匹配正則表達(dá) 式的行開始 >:到匹配正則表達(dá)式的行結(jié)束 [ ]:單個字符,如[A]即A符合要求 [ - ]:范圍,如[A-Z],即A、B、C一直到Z都符合要求 。:所有的單個字符 - :有字符,長度可以為0 例 grep -n "word" filename 查看文件包含條件的日志,全部顯示出來(單引號或者雙引號都可以,不區(qū)分) grep -E "word1|word2|word3" filename 滿足任意條件(word1、word2和word3之一)將匹配的內(nèi)容全部打 印出來 grep word1 filename | grep word2 |grep word3 必須同時滿足三個條件(word1、word2和word3)才匹配 多管道,多次篩選 使用正則表達(dá)式 -E 選項 grep -E "[1-9]+" 或 egrep "[1-9]+" grep -A100 'word' filename 顯示匹配行往后100行 grep -B100 'word' filename 顯示匹配行往前100行 grep -C100 'word' filename 顯示匹配行往前往后100行
九、sed命令:
sed 本身是一個管道命令,主要是以行為單位進(jìn)行處理,可以將數(shù)據(jù)行進(jìn)行替換、刪除、新增、選取等特定工作 參數(shù) -n∶使用安靜(silent)模式。在一般 sed 的用法中,所有來自 STDIN的資料一般都會被列出到螢?zāi)簧稀5绻? 上 -n 參數(shù)后,則只有經(jīng)過sed 特殊處理的那一行(或者動作)才會被列出來。 -p ∶列印,亦即將某個選擇的資料印出。通常 p 會與參數(shù) sed -n 一起運(yùn)作~ -s ∶取代,可以直接進(jìn)行取代的工作哩!通常這個 s 的動作可以搭配正規(guī)表示法!例如 1,20s/old/new/g 例 sed -n '5,10p' filename 只查看文件的第5行到第10行 sed -n '/2019-01-04 21:30:00/,/2019-01-04 22:30:30/p' filename 只查看文件包含時間段的區(qū)間內(nèi)容
混合命令:
tail -n +92表示查詢92行之后的日志 tail filename -n 300 -f 查看底部即最新300條日志記錄,并實時刷新 tail -f filename | grep -E 'word1|word2|word3' 實時打印出匹配規(guī)則的文件內(nèi)容(注意或符號前后最好 不要有空格) cat -n filename |grep “地形” | more 得到關(guān)鍵日志的行號 cat -n filename |tail -n +92|head -n 20 grep 'nick' | tail filename -C 10 查看字符‘nick'前后10條日志記錄, 大寫C head -n 20 則表示在前面的查詢結(jié)果里再查前20條記錄
附加:
vi filename 查看或編輯文件 查找文件內(nèi)容關(guān)鍵字方法: 先 執(zhí)行命令>: vi filename 然后輸入>: /查找字符串 按n查找下一個 例 如查找nohup.out日志文件的error關(guān)鍵字: 執(zhí)行命令: vi nohup.out 輸入以下回車: /error 按n查找下一個 將實時日志打印到指定文件: 例 將實時日志打印到文件newlog.log內(nèi),方便查找 執(zhí)行命令: tail -f nohup.out >newlog.log 備注:newlog.log文件可以不存在,命令執(zhí)行時會自動新建
原文鏈接:https://blog.csdn.net/weixin_42614447/article/details/85806115
相關(guān)推薦
- 2024-03-19 關(guān)于maven打包時,沒有將依賴包打進(jìn)來的問題
- 2024-03-17 Invoke-Expression : 無法將參數(shù)綁定到參數(shù)“Command”,因為該參數(shù)為空字符串
- 2023-07-03 react之自定義hooks
- 2022-11-21 Go語言實現(xiàn)ssh&scp的方法詳解_Golang
- 2022-02-20 C#?.NET實現(xiàn)掃描識別圖片中的文字_C#教程
- 2022-04-20 C語言進(jìn)階棧幀示例詳解教程_C 語言
- 2023-02-27 基于C#實現(xiàn)一個溫濕度監(jiān)測小工具_(dá)C#教程
- 2022-09-04 k8s查看pod日志的幾種實用方法匯總_云其它
- 最近更新
-
- window11 系統(tǒng)安裝 yarn
- 超詳細(xì)win安裝深度學(xué)習(xí)環(huán)境2025年最新版(
- Linux 中運(yùn)行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎(chǔ)操作-- 運(yùn)算符,流程控制 Flo
- 1. Int 和Integer 的區(qū)別,Jav
- spring @retryable不生效的一種
- Spring Security之認(rèn)證信息的處理
- Spring Security之認(rèn)證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權(quán)
- redisson分布式鎖中waittime的設(shè)
- maven:解決release錯誤:Artif
- restTemplate使用總結(jié)
- Spring Security之安全異常處理
- MybatisPlus優(yōu)雅實現(xiàn)加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務(wù)發(fā)現(xiàn)-Nac
- Spring Security之基于HttpR
- Redis 底層數(shù)據(jù)結(jié)構(gòu)-簡單動態(tài)字符串(SD
- arthas操作spring被代理目標(biāo)對象命令
- Spring中的單例模式應(yīng)用詳解
- 聊聊消息隊列,發(fā)送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠(yuǎn)程分支