<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          不可不知的Linux文本查看命令

          共 2836字,需瀏覽 6分鐘

           ·

          2021-01-23 10:23


          作者:守望,Linux應(yīng)用開發(fā)者,目前在公眾號(hào)【編程珠璣】?分享Linux/C/C++/數(shù)據(jù)結(jié)構(gòu)與算法/工具等原創(chuàng)技術(shù)文章和學(xué)習(xí)資源。

          Linux常用命令中,除了cat還有很多其他用于文本查看的命令。本文將簡(jiǎn)單介紹一下這些文本查看的命令。

          全文本顯示--cat

          cat可能是常用的一個(gè)文本查看命令了,使用方法也很簡(jiǎn)單:

          cat?file??#全文本顯示在終端
          cat?-n?file?#顯示全文本,并顯示行號(hào)

          另外,cat也可用作合并文件:

          cat?file1?file2?>file3

          該命令將file1 file2的內(nèi)容合并寫到file3中。

          倒序顯示全文本--tac

          tac是cat倒過(guò)來(lái)的寫法,tac以行為單位,倒序顯示全文本內(nèi)容。

          tac?file

          分頁(yè)顯示文本--more

          cat將整個(gè)文本內(nèi)容輸出到終端。那么也就帶來(lái)一個(gè)問題,如果文本內(nèi)容較多,前面的內(nèi)容查看將十分不便。而more命令可以分頁(yè)顯示。
          1.顯示內(nèi)容

          more?file

          之后,就可以使用按鍵來(lái)查看文本。常用按鍵如下:

          回車????#向下n行,默認(rèn)為1行
          空格????#向下滾動(dòng)一屏
          b??????#向上滾動(dòng)一屏
          =??????#輸出當(dāng)前行號(hào)
          :f?????#輸出當(dāng)前文件名和當(dāng)前行號(hào)
          q??????#退出

          2.從指定行開始顯示

          more?+10?file

          該命令從第10行開始顯示file的內(nèi)容。

          3.從匹配的字符串行開始顯示

          more?+/string?file

          該命令從有string的行的前兩行開始file的內(nèi)容。

          任意瀏覽搜索文本--less

          less命令的基本功能和more沒有太大差別,但是less命令可以向前瀏覽文件,而more只能向后瀏覽文件,同時(shí)less還擁有更多的搜索功能。
          常見使用方法:

          less?file?????#瀏覽file
          less?-N?file??#瀏覽file,并且顯示每行的行號(hào)
          less?-m?file??#瀏覽file,并顯示百分比

          常用按鍵如下:

          f????????#向前滾動(dòng)一屏
          b????????#向后滾動(dòng)一屏
          回車或j???#向前移動(dòng)一行
          k????????#向后移動(dòng)一行
          G????????#移動(dòng)到最后一行
          g????????#移動(dòng)到第一行
          /string??#向下搜索string,n查看下一個(gè),N查看上一個(gè)結(jié)果
          ?string?#向上搜索string,n查看下一個(gè),N查看上一個(gè)結(jié)果
          q????#退出

          相比more命令,less命令能夠搜索匹配需要的字符串。
          另外,less還能在多個(gè)文件間切換瀏覽:

          less?file1?file2?file3
          :n?????#切換到下一個(gè)文件
          :p?????#切換到上一個(gè)文件
          :x?????#切換到第一個(gè)文件
          :d?????#從當(dāng)前列表移除文件

          顯示文本頭部?jī)?nèi)容--head

          head命令的作用就像它的名字一樣,用于顯示文件的開頭部分文本。
          常見用法如下:

          head?-n?100?file?#顯示file的前100
          head?-n?-100?file?#顯示file的除最后100行以外的內(nèi)容。??

          顯示文本尾部?jī)?nèi)容--tail

          和head命令類似,只不過(guò)tail命令用于讀取文本尾部部分內(nèi)容:

          tail?-100?file??#顯示file最后100行內(nèi)容
          tail?-n?+100?file??#從第100行開始顯示file內(nèi)容???

          tail還有一個(gè)比較實(shí)用的用法,用于實(shí)時(shí)文本更新內(nèi)容。比如說(shuō),有一個(gè)日志文件正在寫,并且實(shí)時(shí)在更新,就可以用命令:

          tail?-f?logFile

          對(duì)于更新的日志內(nèi)容,會(huì)實(shí)時(shí)打印到終端上,方面查看實(shí)時(shí)日志。

          指定順序顯示文本--sort

          sort可用于對(duì)文本進(jìn)行排序并顯示,默認(rèn)為字典升序。
          例如有一段文本test.txt內(nèi)容如下:

          vim
          count
          fail
          help
          help
          dead
          apple

          1.升序顯示文本
          使用命令:

          sort?test.txt
          apple
          count
          dead
          fail
          help
          help
          vim

          文本內(nèi)容將以升序顯示。
          2.降序顯示
          相關(guān)參數(shù)-r:

          sort?-r?test.txt
          vim
          help
          help
          fail
          dead
          count
          apple

          3.去掉重復(fù)的行
          我們可以觀察到,前面的help有兩行,如果我們不想看到重復(fù)的行呢?可以使用參數(shù)-u,例如:

          sort?-u?test.txt
          apple
          count
          dead
          fail
          help
          vim

          可以看到help行不再重復(fù)顯示。

          4.按照數(shù)字排序
          如果按照字典排序,10將會(huì)在2的前面,因此我們需要按照數(shù)字大小排序:

          sort?-n?file

          由于本文篇幅有限,不在本文展開介紹,后續(xù)將單獨(dú)介紹sort命令的妙用。

          過(guò)濾顯示文本--sed

          sed是一個(gè)流編輯器,功能非常強(qiáng)大,但本文只介紹文本查看相關(guān)功能。
          1.顯示匹配關(guān)鍵字行
          有時(shí)候查看日志,可能只需要查看包含某些關(guān)鍵字的日志行:

          sed?-n?"/string/p"?logFile

          上面的命令表示打印包含string的行。

          2.打印指定行

          sed?-n?"1,5p"?logFile?#打印第1到5行
          sed?-n?'3,5{=;p}'?logFile?#打印3到5行,并且打印行號(hào)
          sed?-n?"10p"?logFIle??#打印第10行

          去重顯示文本--uniq

          常見用法如下:

          uniq?file??#去除重復(fù)的行
          uniq?-c?file?#去除重復(fù)的行,并顯示重復(fù)次數(shù)
          uniq?-d?file?#只顯示重復(fù)的行
          uniq?-u?file?#只顯示出現(xiàn)一次的行
          uniq?-i?file?#忽略大小寫,去除重復(fù)的行
          uniqe?-w?10?file?#認(rèn)為前10個(gè)字符相同,即為重復(fù)

          文本編輯查看--vi

          查看文件也很簡(jiǎn)單:

          vi?file

          而從vi發(fā)展出來(lái)的被譽(yù)為編輯器之神的vim有著更加強(qiáng)大的功能,這里不作展開。

          玩游戲練習(xí)Vim ?:https://vim-adventures.com/

          總結(jié)

          文本查看命令較多,可根據(jù)使用場(chǎng)景不同選擇使用不同的命令。有些命令的用法較多,本文僅介紹經(jīng)典用法,更多用法可使用man命令查看。很多命令可以結(jié)合其他命令使用,例如ps -elf|more,分頁(yè)顯示進(jìn)程信息等等,更多用法可自行探索。

          良許個(gè)人微信


          添加良許個(gè)人微信即送3套程序員必讀資料


          → 精選技術(shù)資料共享

          → 高手如云交流社群





          本公眾號(hào)全部博文已整理成一個(gè)目錄,請(qǐng)?jiān)诠娞?hào)里回復(fù)「m」獲??!

          推薦閱讀:

          三分鐘構(gòu)建自動(dòng)化運(yùn)維平臺(tái)-nightingale(夜鶯)

          用 Linux 讓舊 MacBook 重獲新生

          別瞎學(xué)了,這幾門語(yǔ)言要被淘汰了!


          5T技術(shù)資源大放送!包括但不限于:C/C++,Linux,Python,Java,PHP,人工智能,單片機(jī),樹莓派,等等。在公眾號(hào)內(nèi)回復(fù)「1024」,即可免費(fèi)獲?。。?/span>


          瀏覽 42
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  男女激情综合福利网站在线观看 | 粉嫩小泬BBBB免费看 | 天天干天天操天天拍 | 日日日日日日日日日日日日日日日干 | 大香蕉凹凸视频 |