Linux 命令使用:cat與tac、more與less辈赋、head與tail

Linux系統(tǒng)中有許多命令提供查看文件內(nèi)容的功能鲫忍,無(wú)所謂哪個(gè)命令更好,在具體工作中钥屈,根據(jù)需求選擇具有不同功能特點(diǎn)的命令悟民。

1. cat <file>

查看文件內(nèi)容;指定輸入創(chuàng)建文件篷就;連接或合并文件

【1】查看一個(gè)或多個(gè)文件內(nèi)容

tmpuser:test/ $ ll
total 0
tmpuser:test/ $ echo 'a' > t1.file
tmpuser:test/ $ echo 'b' > t2.file
tmpuser:test/ $ cat t1.file
a
tmpuser:test/ $ cat t1.file t2.file
a
b

cat命令查看文件內(nèi)容是該命令常用的使用方式射亏,通過(guò)添加參數(shù)可以增加其他功能。

【2】顯示行號(hào)竭业、縮小空行顯示

tmpuser:test/ $ cat -n t3.file
     1  a
     2
     3
     4  b
tmpuser:test/ $ cat -b t3.file
     1  a


     2  b
tmpuser:test/ $ cat -sb t3.file
     1  a

     2  b

由該示例可知智润,-s,--squeeze-blank參數(shù)用于縮小多個(gè)空行到一個(gè)空行;-n,--number參數(shù)用于給顯示的文件內(nèi)容增加行號(hào)未辆;-b,--number-nonblank參數(shù)用于給顯示的非空行文件內(nèi)容增加行號(hào)窟绷。

【3】根據(jù)文件、標(biāo)準(zhǔn)輸入創(chuàng)建文件

tmpuser:test/ $ cat t1.file t2.file > t4.file
tmpuser:test/ $ cat t4.file
a
b
tmpuser:test/ $ cat > t5.file << EOF
> a
> b
> EOF
tmpuser:test/ $ cat t5.file
a
b

由該示例可知咐柜,cat命令通過(guò)>輸出重定向符號(hào)兼蜈,可以根據(jù)現(xiàn)有文件攘残,或者標(biāo)準(zhǔn)輸入創(chuàng)建新文件。

<< 作為輸入重定向符號(hào)为狸,定義EOF作為輸入分界符歼郭,在EOF之間的內(nèi)容作為輸入內(nèi)容。該符號(hào)不一定非要為EOF辐棒,只不過(guò)常用該符號(hào)而已病曾。

【4】根據(jù)文件、標(biāo)準(zhǔn)輸入追加文件

tmpuser:test/ $ cat t4.file
a
b
tmpuser:test/ $ cat t1.file t2.file >> t4.file
tmpuser:test/ $ cat t4.file
a
b
a
b
tmpuser:test/ $ cat t5.file
a
b
tmpuser:test/ $ cat >> t5.file <<EOF
> a
> b
> EOF
tmpuser:test/ $ cat t5.file
a
b
a
b

由該示例可知漾根,cat命令通過(guò)>>輸出重定向符號(hào)泰涂,可以根據(jù)現(xiàn)有文件,或者標(biāo)準(zhǔn)輸入追加文件內(nèi)容辐怕。

2. tac <file>

taccat的倒寫形式负敏,查看的文件內(nèi)容也是以行為單位倒序顯示的。

【1】以行為單位倒序顯示文件內(nèi)容

tmpuser:test/ $ cat t6.file
1
2
3
4
5
tmpuser:test/ $ tac t6.file
5
4
3
2
1

由示例可知秘蛇,該命令提供文件內(nèi)容的倒序顯示其做。

該命令的倒序功能可以應(yīng)用于日志的查看中,用于查看最新日志信息赁还。并且該命令提供-s,--separator=STRING選項(xiàng)妖泄,用于倒序顯示分隔后的部分內(nèi)容。

【2】倒序顯示字符串分隔的部分

tmpuser:test/ $ cat t6.file
1
2
3
4
5
tmpuser:test/ $ tac t6.file -s '3'

4
5
1
2
3

由示例可知艘策,可以通過(guò)指定分隔字符串的形式蹈胡,倒序顯示部分內(nèi)容。

當(dāng)文件內(nèi)容不多時(shí)朋蔫,使用cat命令直接查看文件內(nèi)容較為直觀罚渐,但是當(dāng)文件較大、內(nèi)容較多時(shí)驯妄,推薦使用提供了分頁(yè)查看文件內(nèi)容功能的命令荷并。

3. more <file>

more命令直接加載指定的文件,提供分頁(yè)查看文件內(nèi)容的功能青扔,空格鍵向下翻頁(yè)源织,b鍵向上翻頁(yè),q鍵退出查看微猖。常用參數(shù)如下:

  • -<number>: 指定分頁(yè)大小谈息,默認(rèn)分頁(yè)大小為填滿終端頁(yè)面
  • +<number>: 指定行開(kāi)始顯示
  • +/<string>: 搜索指定內(nèi)容,并從其前兩行開(kāi)始顯示
  • -s: 合并多個(gè)空行為一行

【1】指定分頁(yè)大小凛剥,并從指定行開(kāi)始顯示

tmpuser:test/ $ cat -n t7.file
     1  a
     2
     3
     4  b
     5  c
     6  d
     7  e
tmpuser:test/ $ more -2 +4 t7.file
b
c
--More--(66%)

該示例指定分頁(yè)大小為2侠仇,從第4行開(kāi)始顯示,通過(guò)空格鍵和b鍵進(jìn)行分頁(yè)顯示犁珠。

【2】指定分頁(yè)大小,搜索指定內(nèi)容泡孩,并從其前兩行開(kāi)始顯示

tmpuser:test/ $ cat -n t7.file
     1  a
     2
     3
     4  b
     5  c
     6  d
     7  e
tmpuser:test/ $ more -2 +/d t7.file

...skipping
b
c
--More--(66%)

該示例指定分頁(yè)大小為2,從字符串d所在行的前兩行開(kāi)始顯示,通過(guò)空格鍵和b鍵進(jìn)行分頁(yè)顯示分蓖。

【3】合并多個(gè)空行為一行

tmpuser:test/ $ cat -n t7.file
     1  a
     2
     3
     4  b
     5  c
     6  d
     7  e
tmpuser:test/ $ more -s t7.file
a

b
c
d
e
4. less <file>

less命令與more較為相似,估計(jì)以后會(huì)越來(lái)越相似其弊,因?yàn)樵S多less能夠?qū)崿F(xiàn)的操作也被逐漸添加到more的功能列表中巫橄。

less命令同樣提供分頁(yè)查看文件內(nèi)容的功能,與more命令相同窑眯,可以使用空格鍵向下翻頁(yè)屏积,b鍵向上翻頁(yè),也可以通過(guò)上下鍵實(shí)現(xiàn)翻頁(yè)磅甩。相對(duì)于more命令炊林,less能夠?qū)崿F(xiàn)更多的操作。常用參數(shù)如下:

  • -N: 顯示行號(hào)
  • +<number>: 指定行開(kāi)始顯示
  • +/<string>: 搜索指定內(nèi)容卷要,并從該行開(kāi)始顯示
  • -s: 合并多個(gè)空行為一行
  • +F: 持續(xù)跟蹤添加內(nèi)容渣聚,需要ctrl+c才能退出命令

less命令打開(kāi)文件后,即使到達(dá)文件末尾也不會(huì)自動(dòng)退出僧叉,該命令更像是提供給用戶一個(gè)仔細(xì)查看文件內(nèi)容的場(chǎng)景奕枝,需要使用q鍵退出。

  • /<string>: 由上向下搜索指定字符串
  • ?<string>: 由下向上搜索指定字符串
  • n: 查看搜索字符串的下一個(gè)位置
  • N: 查看搜索字符串的上一個(gè)位置

【1】顯示行號(hào)瓶堕、并從指定行開(kāi)始展示

tmpuser:test/ $ cat -n t8.file
     1  one
     2
     3
     4  two
     5  three
     6  four
     7  five
tmpuser:test/ $ less -N +4 t8.file
      4 two
      5 three
      6 four
      7 five
~
~
t8.file lines 4-7/7 (END)

【2】從指定搜索內(nèi)容開(kāi)始展示

tmpuser:test/ $ cat -n t8.file
     1  one
     2
     3
     4  two
     5  three
     6  four
     7  five
tmpuser:test/ $ less +/two t8.file
two
three
four
five
t8.file lines 4-7/7 (END)

【3】合并多個(gè)空行

tmpuser:test/ $ cat -n t8.file
     1  one
     2
     3
     4  two
     5  three
     6  four
     7  five
tmpuser:test/ $ less -sN t8.file
      1 one
      2
      4 two
      5 three
      6 four
      7 five
t8.file lines 1-7/7 (END)

【4】持續(xù)跟蹤添加內(nèi)容

tmpuser:test/ $ less +F t8.file
one


two
three
four
five
Waiting for data... (interrupt to abort)

使用+F參數(shù)隘道,或者在less <file>命令打開(kāi)文件后按F鍵,都可以進(jìn)入跟蹤文件添加內(nèi)容狀態(tài)郎笆,該狀態(tài)一般應(yīng)用于查看或監(jiān)控日志谭梗,會(huì)自動(dòng)顯示出最新添加的文件內(nèi)容。需要ctrl+c退出該狀態(tài)宛蚓,然后按q鍵才會(huì)退出激捏。

【5】搜索文件中指定內(nèi)容

tmpuser:test/ $ less t8.file

one


two
three
four
five
/two
# press enter
two
three
four
five

使用/<string>?<string>搜索后匹配到的內(nèi)容會(huì)顯示在第一行,按n鍵則下一個(gè)匹配內(nèi)容的位置會(huì)顯示在第一行凄吏,按N則上一個(gè)匹配內(nèi)容的位置會(huì)顯示在第一行缩幸。

nN切換匹配內(nèi)容位置的行為,是根據(jù)由上向下或者是由下向上的搜索而定的竞思。為了觀察內(nèi)容方便表谊,提供有g鍵和G鍵用于定位文件內(nèi)容首行和尾行。

5. head<file>

head命令較為常用盖喷,用法也較為簡(jiǎn)單爆办,用于顯示文件的前幾行內(nèi)容,默認(rèn)為前10行课梳,可以通過(guò)-n參數(shù)指定行數(shù)距辆。

【1】顯示文件前幾行內(nèi)容

tmpuser:test/ $ cat -n t8.file
     1  one
     2
     3
     4  two
     5  three
     6  four
     7  five
tmpuser:test/ $ head -n 4 t8.file
one


two

當(dāng)-n參數(shù)后指定的數(shù)字為負(fù)數(shù)時(shí)余佃,用于反選,顯示后幾行之前的文件內(nèi)容跨算。

【2】顯示后幾行之前的文件內(nèi)容

tmpuser:test/ $ cat -n t8.file
     1  one
     2
     3
     4  two
     5  three
     6  four
     7  five
tmpuser:test/ $ head -n -2 t8.file
one


two
three
6. tail <file>

tail命令與head作用相反爆土,用于顯示文件后幾行內(nèi)容,默認(rèn)為前10行诸蚕,可以通過(guò)-n參數(shù)指定行數(shù)步势。
【1】顯示文件后幾行內(nèi)容

tmpuser:test/ $ cat -n t8.file
     1  one
     2
     3
     4  two
     5  three
     6  four
     7  five
tmpuser:test/ $ tail -n 4 t8.file
two
three
four
five

當(dāng)-n參數(shù)后指定的數(shù)字為正數(shù)時(shí),用于反選背犯,顯示從第幾行開(kāi)始后的文件內(nèi)容坏瘩。

【2】顯示第幾行開(kāi)始后的文件內(nèi)容

tmpuser:test/ $ cat -n t8.file
     1  one
     2
     3
     4  two
     5  three
     6  four
     7  five
tmpuser:test/ $ tail -n +3 t8.file

two
three
four
five

tail命令有一個(gè)很實(shí)用的參數(shù)-f,該命令用于顯示文件實(shí)時(shí)追加的內(nèi)容漠魏,與前面提到的less +F <file>命令效果類似倔矾。

【3】實(shí)時(shí)顯示文件追加內(nèi)容

tmpuser:test/ $ tail -f t8.file
one


two
three
four
five

該命令會(huì)保持文件監(jiān)控狀態(tài),實(shí)時(shí)刷新追加內(nèi)容柱锹。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末哪自,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子禁熏,更是在濱河造成了極大的恐慌提陶,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,122評(píng)論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件匹层,死亡現(xiàn)場(chǎng)離奇詭異隙笆,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)升筏,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,070評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門撑柔,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人您访,你說(shuō)我怎么就攤上這事铅忿。” “怎么了灵汪?”我有些...
    開(kāi)封第一講書人閱讀 164,491評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵檀训,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我享言,道長(zhǎng)峻凫,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書人閱讀 58,636評(píng)論 1 293
  • 正文 為了忘掉前任览露,我火速辦了婚禮荧琼,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己命锄,他們只是感情好堰乔,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,676評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著脐恩,像睡著了一般镐侯。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上驶冒,一...
    開(kāi)封第一講書人閱讀 51,541評(píng)論 1 305
  • 那天苟翻,我揣著相機(jī)與錄音,去河邊找鬼只怎。 笑死,一個(gè)胖子當(dāng)著我的面吹牛怜俐,可吹牛的內(nèi)容都是我干的身堡。 我是一名探鬼主播,決...
    沈念sama閱讀 40,292評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼拍鲤,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼贴谎!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起季稳,我...
    開(kāi)封第一講書人閱讀 39,211評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤擅这,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后景鼠,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體仲翎,經(jīng)...
    沈念sama閱讀 45,655評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,846評(píng)論 3 336
  • 正文 我和宋清朗相戀三年铛漓,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了溯香。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,965評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡浓恶,死狀恐怖玫坛,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情包晰,我是刑警寧澤湿镀,帶...
    沈念sama閱讀 35,684評(píng)論 5 347
  • 正文 年R本政府宣布,位于F島的核電站伐憾,受9級(jí)特大地震影響勉痴,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜树肃,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,295評(píng)論 3 329
  • 文/蒙蒙 一蚀腿、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦莉钙、人聲如沸廓脆。這莊子的主人今日做“春日...
    開(kāi)封第一講書人閱讀 31,894評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)停忿。三九已至,卻和暖如春蚊伞,著一層夾襖步出監(jiān)牢的瞬間席赂,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書人閱讀 33,012評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工时迫, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留颅停,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,126評(píng)論 3 370
  • 正文 我出身青樓掠拳,卻偏偏與公主長(zhǎng)得像癞揉,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子溺欧,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,914評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容

  • linux資料總章2.1 1.0寫的不好抱歉 但是2.0已經(jīng)改了很多 但是錯(cuò)誤還是無(wú)法避免 以后資料會(huì)慢慢更新 大...
    數(shù)據(jù)革命閱讀 12,168評(píng)論 2 33
  • 官網(wǎng) 中文版本 好的網(wǎng)站 Content-type: text/htmlBASH Section: User ...
    不排版閱讀 4,381評(píng)論 0 5
  • 轉(zhuǎn)自:https://www.cnblogs.com/gaojun/p/3359355.html ls命令就是li...
    xingzai閱讀 587評(píng)論 0 0
  • 今夜無(wú)眠 任冷漠的文字 敲打著思念的淚滴 孤燈下喊熟,畫一顆月光 擁在懷里 不為斑斕詩(shī)句 只為溫暖自己 今夜無(wú)眠 借著...
    燕銜紅泥閱讀 679評(píng)論 10 18
  • 手機(jī)App采集手冊(cè) 手機(jī)App的采集其實(shí)跟web采集原理是一樣的,不一樣的地方在于需要通過(guò)電腦端去監(jiān)聽(tīng)app發(fā)送和...
    阿懶土靈閱讀 14,351評(píng)論 0 5