主頁(yè) > 知識(shí)庫(kù) > Linux中查看文本的小技巧(超實(shí)用?。?/div>

Linux中查看文本的小技巧(超實(shí)用?。?/h1>

熱門(mén)標(biāo)簽:濮陽(yáng)好的聯(lián)通400電話申請(qǐng) 百度地圖標(biāo)注公司位置要多少錢(qián) 靈圖uu電子寵物店地圖標(biāo)注 承德地圖標(biāo)注公司 山東企業(yè)外呼系統(tǒng)公司 地圖標(biāo)注如何改成微信號(hào) 虛假地圖標(biāo)注 地圖標(biāo)注黃河的位置 400電話號(hào)碼辦理多少錢(qián)

前言

日常開(kāi)發(fā)中,我們經(jīng)常需要在服務(wù)器上進(jìn)行各種文本,日志的查看操作,本文主要對(duì)常用的文本,日志查看技巧進(jìn)行了一番總結(jié)和歸納,方便大家收藏起來(lái)后續(xù)查看使用:

tail命令查看日志信息

實(shí)時(shí)監(jiān)控日志:

tail -f filename

實(shí)時(shí)監(jiān)控10行日志信息:

tail -10f filename

查看日志尾部的最后100行日志信息:

tail -n 100 filename

查看日志100行之后的日志信息:

tail -n +100 filename

head命令查看文本信息

查看文本開(kāi)始的頭100行信息:

head -n 100 filename

查看文本最后100行信息以上的內(nèi)容

head -n -100 filename

cat命令查看文本信息

查看全部文本內(nèi)容

cat filename

查看文本的中間某些行范圍之間的內(nèi)容,例如說(shuō)查看文本文件100-120行之間的內(nèi)容:

cat -n filename |tail -n +100|head -n 20

不過(guò)使用個(gè)人不是太喜歡使用這種命令來(lái)進(jìn)行文本的定位查看,因?yàn)椴榭雌饋?lái)過(guò)于麻煩,文章下邊會(huì)有更加簡(jiǎn)便的命令操作。

tac查看文本信息

和cat命令有點(diǎn)相反,cat命令更多的是從頭部往尾部的順序展現(xiàn)文本內(nèi)容,而tac命令正好是從文本的尾部往頭部展現(xiàn)日志內(nèi)容

tac filename

例如說(shuō),我們通過(guò)cat命令和tac命令同時(shí)來(lái)查看一段相同的內(nèi)容:

通過(guò)不同命令來(lái)展示文本,會(huì)發(fā)現(xiàn)文本的內(nèi)容順序有所相反。

搜索文本內(nèi)容

grep是一種強(qiáng)大的文本搜索工具,它能使用正則表達(dá)式搜索文本,并把匹配的行打印出來(lái)。

grep命令的常用方式:

在多個(gè)文件中查找:

grep "match_pattern" file_1 file_2 file_3 ...

標(biāo)記匹配顏色 --color=auto 選項(xiàng):

grep "match_pattern" file_name --color=auto 

//【這里的color項(xiàng)可以根據(jù)文檔說(shuō)明進(jìn)行選擇always,never,auto三種】

輸出除之外的所有行 -v 選項(xiàng):

grep -v "match_pattern" file_name

使用正則表達(dá)式 -E 選項(xiàng):

grep -E "[1-9]+"

只輸出匹配到的內(nèi)容選項(xiàng):

grep -o -E "[a-z]+." line

統(tǒng)計(jì)文件或者文本中包含匹配字符串的行數(shù) -c 選項(xiàng):

grep -c "text" file_name

輸出包含匹配字符串的行數(shù) -n 選項(xiàng):

grep "text" -n file_name

在了解了grep命令能完成的功能點(diǎn)之后,我們可以在實(shí)際工作中靈活運(yùn)用。

有些時(shí)候我們也會(huì)遇到一些希望查看某個(gè)時(shí)間段日志信息的需要,這個(gè)時(shí)候可以利用grep這條命令來(lái)實(shí)現(xiàn)這個(gè)功能,例如說(shuō)希望查看2019-08-06 22點(diǎn)這一個(gè)小時(shí)以內(nèi)的日志信息,那么可以輸入以下命令:

 grep '2019-08-06 22' filename

這樣可以快速定位到你所希望查看的信息范圍。

由于grep命令是可以接收standard input的數(shù)據(jù),因此我們通??梢越柚艿烂罘?| ”的幫助,在一些標(biāo)準(zhǔn)輸出進(jìn)行中進(jìn)行查找操作。

例如說(shuō),先將文件的內(nèi)容讀取出來(lái),然后借助管道的幫助將內(nèi)容轉(zhuǎn)發(fā)給grep來(lái)進(jìn)行內(nèi)容過(guò)濾,如下邊的這段命令:

cat log.file |grep -n '2019-08-06 22:43'

除了使用grep命令之外,也可以使用sed命令來(lái)實(shí)現(xiàn)相應(yīng)的效果。

sed是一種非交互式的編輯器,sed會(huì)逐行處理文件(或輸入),并將結(jié)果發(fā)送到屏幕。

可能對(duì)于新手來(lái)說(shuō),講概念還不如直接來(lái)幾個(gè)實(shí)操案例更為直接。

sed命令的常用方式:

只打印文件的第一行內(nèi)容

sed -n '1p' filename

查看文件的第一行到第十行之間的內(nèi)容

sed -n '1,10p' filename

刪除第一行文本信息

sed '1d' filename

將文本里面的某些字符串進(jìn)行替換

sed 's/希望替換的內(nèi)容/被替換的內(nèi)容/g'
例如:sed 's/1/one /g' filename 將1替換為one

在了解了sed命令的一些基礎(chǔ)用法之后,我們可以在實(shí)際的工作場(chǎng)景中多次運(yùn)用,從而強(qiáng)化自己對(duì)于sed命令的理解。

例如說(shuō),通過(guò)sed命令來(lái)進(jìn)行日期范圍的指定,例如說(shuō)查看2019-08-06 22:43-22:44之間的日志記錄:

sed -n '/2019-08-06 22:43/,/2019-08-06 22:44/p' filename

上邊有說(shuō)到使用head和tail命令一起來(lái)實(shí)現(xiàn)對(duì)于日志文件的某段內(nèi)容查看,但是這樣的操作實(shí)在是有點(diǎn)麻煩,不妨可以嘗試使用sed命令來(lái)進(jìn)行操作。

例如說(shuō),查看日志的第1-20行內(nèi)容:

 nl log.file | sed -n '1,10p'

利用more命令進(jìn)行翻頁(yè)查看

如果說(shuō)希望查看的日志文件過(guò)大,那么可以通過(guò)使用more命令來(lái)進(jìn)行分頁(yè)查找,例如說(shuō)設(shè)定每一頁(yè)展示10條數(shù)據(jù)信息:

more -10 filename

通過(guò)使用more命令可以查看到每一頁(yè)展示的數(shù)據(jù),同時(shí)通過(guò)敲空格鍵會(huì)進(jìn)行下一頁(yè)的跳轉(zhuǎn)。同時(shí)在窗口中也會(huì)顯示當(dāng)前所閱讀的文本內(nèi)容的基礎(chǔ)進(jìn)度。

說(shuō)了那么多,我們不妨進(jìn)行一些模擬的操作場(chǎng)景吧:

查看日志最后一次出現(xiàn)關(guān)鍵字'test'的日志記錄

 grep 'test' -A 10 log.file | tail -n 11

這里需要了解到grep命令的幾個(gè)參數(shù)含義:

  • grep ‘name' -A 10 顯示匹配內(nèi)容和后面的10行
  • grep ‘name' -B 10 顯示匹配內(nèi)容和前面的10行
  • grep ‘name' -C 10 顯示匹配內(nèi)容和前后面的10行

tail -n 11命令則是將當(dāng)前顯示的10行內(nèi)容以及匹配的那一行內(nèi)容展示出現(xiàn)

簡(jiǎn)單統(tǒng)計(jì)一份日志里面出現(xiàn)‘test'關(guān)鍵字的行數(shù)

相應(yīng)命令:

grep 'test' ./log.file |wc -l

這里我們可以先將文本的內(nèi)容進(jìn)行輸出到標(biāo)準(zhǔn)輸出中,然后借助管道將數(shù)據(jù)信息傳給wc命令進(jìn)行統(tǒng)計(jì)。

wc命令常用的幾個(gè)參數(shù)

-l 匹配的行數(shù)
-w 匹配的字?jǐn)?shù)
-m 匹配的字符數(shù)目

linux里面對(duì)于文本信息的查看技巧實(shí)在是有太多了,遠(yuǎn)遠(yuǎn)不局限于我在文中所提及的這些,因此在實(shí)際的工作中我們還可以多多將有助于自己提升工作效率的技巧進(jìn)行歸納和總結(jié)。

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。

標(biāo)簽:上海 德宏 福州 泰安 安康 鷹潭 樂(lè)山 淮安

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Linux中查看文本的小技巧(超實(shí)用?。?,本文關(guān)鍵詞  Linux,中,查看,文本,的,小,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Linux中查看文本的小技巧(超實(shí)用?。废嚓P(guān)的同類(lèi)信息!
  • 本頁(yè)收集關(guān)于Linux中查看文本的小技巧(超實(shí)用?。┑南嚓P(guān)信息資訊供網(wǎng)民參考!
  • 企业400电话

    智能AI客服机器人
    15000

    在线订购

    合计11份范本:公司章程+合伙协议+出资协议+合作协议+股权转让协议+增资扩股协议+股权激励+股东会决议+董事会决议

    推薦文章