隨筆-314  評論-209  文章-0  trackbacks-0

          作者:北南南北
          來自:LinuxSir.Org
          摘要: 本文講述幾種常用文件內(nèi)容的查看工具,比如cat、more、less、head、tail等,把這些工具最常用的參數(shù)、動(dòng)作介紹給新手,能讓新手在短短的幾分鐘內(nèi)上手運(yùn)用。此文獻(xiàn)給面對黑色的控制臺不知所措的弟兄。

          目錄

            1、cat 顯示文件連接文件內(nèi)容的工具;

             

              1.0 cat 語法結(jié)構(gòu);
              1.1 cat 查看文件內(nèi)容實(shí)例;
              1.2 cat 的創(chuàng)建、連接文件功能實(shí)例;

            2、more 文件內(nèi)容或輸出查看工具;

              2.1 more 的語法、參數(shù)和動(dòng)作命令;
              2.2 more 的參數(shù)應(yīng)用舉例;
              2.3 more 的動(dòng)作指令;
              2.4 其它命令通過管道和more結(jié)合的運(yùn)用例子;

            3、less 查看文件內(nèi)容 工具;

              3.1 less的語法格式;
              3.2 less的動(dòng)作命令;

            4、head 工具,顯示文件內(nèi)容的前幾行;
            5、tail 工具,顯示文件內(nèi)容的最后幾行;
            6、關(guān)于本文;
            7、后記;
            8、參考文檔;
            9、相關(guān)文檔;


          +++++++++++++++++++++++++++++++++++++
          正文
          +++++++++++++++++++++++++++++++++++++


          1、cat 顯示文件連接文件內(nèi)容的工具;

          cat 是一個(gè)文本文件查看和連接工具。查看一個(gè)文件的內(nèi)容,用cat比較簡單,就是cat 后面直接接文件名。

          比如:

          [root@localhost ~]# cat /etc/fstab

           

          為了便于新手弟兄靈活掌握這個(gè)工具,我們多說一點(diǎn)常用的參數(shù);


          1.0 cat 語法結(jié)構(gòu);

          cat [選項(xiàng)] [文件]...

           

          選項(xiàng)
                      -A, --show-all           等價(jià)于 -vET
                      -b, --number-nonblank    對非空輸出行編號
                      -e                       等價(jià)于 -vE
                      -E, --show-ends          在每行結(jié)束處顯示 $
                      -n, --number             對輸出的所有行編號
                      -s, --squeeze-blank      不輸出多行空行
                      -t                       與 -vT 等價(jià)
                      -T, --show-tabs          將跳格字符顯示為 ^I
                      -u                       (被忽略)
                      -v, --show-nonprinting   使用 ^ 和 M- 引用,除了 LFD 和 TAB 之外
                      --help     顯示此幫助信息并離開
                      


          1.1 cat 查看文件內(nèi)容實(shí)例;

          [root@localhost ~]# cat /etc/profile 注:查看/etc/目錄下的profile文件內(nèi)容;
          [root@localhost ~]# cat -b /etc/fstab 注:查看/etc/目錄下的profile內(nèi)容,并且對非空白行進(jìn)行編號,行號從1開始;
          [root@localhost ~]# cat -n /etc/profile 注:對/etc目錄中的profile的所有的行(包括空白行)進(jìn)行編號輸出顯示;
          [root@localhost ~]# cat -E /etc/profile 注:查看/etc/下的profile內(nèi)容,并且在每行的結(jié)尾處附加$符號;

           

          cat 加參數(shù)-n 和nl工具差不多,文件內(nèi)容輸出的同時(shí),都會(huì)在每行前面加上行號;

          [root@localhost ~]# cat -n /etc/profile
          [root@localhost ~]# nl /etc/profile

           

          cat 可以同時(shí)顯示多個(gè)文件的內(nèi)容,比如我們可以在一個(gè)cat命令上同時(shí)顯示兩個(gè)文件的內(nèi)容;

          [root@localhost ~]# cat /etc/fstab /etc/profile

           

          cat 對于內(nèi)容極大的文件來說,可以通過管道|傳送到more 工具,然后一頁一頁的查看;

          [root@localhost ~]# cat /etc/fstab /etc/profile | more

           


          1.2 cat 的創(chuàng)建、連接文件功能實(shí)例;


          cat 有創(chuàng)建文件的功能,創(chuàng)建文件后,要以EOF或STOP結(jié)束;

          [root@localhost ~]# cat > linuxsir.org.txt << EOF 注:創(chuàng)建linuxsir.org.txt文件;
          > 我來測試 cat 創(chuàng)建文件,并且為文件輸入內(nèi)容; 注:這是為linuxsir.org.txt文件輸入內(nèi)容;
          > 北南南北 測試; 注:這是為linuxsir.org.txt文件輸入內(nèi)容;
          > EOF 注:退出編輯狀態(tài);
          [root@localhost ~]# cat linuxsir.org.txt 注:我們查看一下linuxsir.org.txt文件的內(nèi)容;
          我來測試 cat 創(chuàng)建文件,并且為文件輸入內(nèi)容;
          北南南北 測試;

           

          cat 還有向已存在的文件追加內(nèi)容的功能;

          [root@localhost ~]# cat linuxsir.txt 注:查看已存在的文件linuxsir.txt 內(nèi)容;
          I am BeiNanNanBei From LinuxSir.Org . 注:內(nèi)容行
          我正在為cat命令寫文檔
          [root@localhost ~]# cat >> linuxsir.txt << EOF 注:我們向linuxsir.txt文件追加內(nèi)容;
          > 我來測試cat向文檔追加內(nèi)容的功能; 注:這是追回的內(nèi)容
          > OK?
          > OK~
          > 北南 呈上
          > EOF 注:以EOF退出;
          [root@localhost ~]# cat linuxsir.txt 注:查看文件內(nèi)容,看是否追回成功。
          I am BeiNanNanBei From LinuxSir.Org .
          我正在為cat命令寫文檔
          我來測試cat向文檔追加內(nèi)容的功能;
          OK?
          OK~
          北南 呈上



          cat 連接多個(gè)文件的內(nèi)容并且輸出到一個(gè)新文件中;

           

          假設(shè)我們有sir01.txt、sir02.tx和sir03.txt ,并且內(nèi)容如下;

          [root@localhost ~]# cat sir01.txt
          123456
          i am testing
          [root@localhost ~]# cat sir02.txt
          56789
          BeiNan Tested
          [root@localhost ~]# cat sir03.txt
          09876
          linuxsir.org testing

           

          我想通過cat 把sir01.txt、sir02.txt及sir03.txt 三個(gè)文件連接在一起(也就是說把這三個(gè)文件的內(nèi)容都接在一起)并輸出到一個(gè)新的文件sir04.txt 中。

          注意:其原理是把三個(gè)文件的內(nèi)容連接起來,然后創(chuàng)建sir04.txt文件,并且把幾個(gè)文件的內(nèi)容同時(shí)寫入sir04.txt中。特別值得一提的是,如果您輸入到一個(gè)已經(jīng)存在的sir04.txt 文件,會(huì)把sir04.txt內(nèi)容清空。

          [root@localhost ~]# cat sir01.txt sir02.txt sir03.txt > sir04.txt
          [root@localhost ~]# more sir04.txt
          123456
          i am testing
          56789
          BeiNan Tested
          09876
          linuxsir.org testing

           

          cat 把一個(gè)或多個(gè)已存在的文件內(nèi)容,追加到一個(gè)已存在的文件中

          [root@localhost ~]# cat sir00.txt
          linuxsir.org forever
          [root@localhost ~]# cat sir01.txt sir02.txt sir03.txt >> sir00.txt
          [root@localhost ~]# cat sir00.txt
          linuxsir.org forever
          123456
          i am testing
          56789
          BeiNan Tested
          09876
          linuxsir.org testing

           

          警告:我們要知道>意思是創(chuàng)建,>>是追加。千萬不要弄混了。造成失誤可不是鬧著玩的;


          2、more 文件內(nèi)容或輸出查看工具;


          more 是我們最常用的工具之一,最常用的就是顯示輸出的內(nèi)容,然后根據(jù)窗口的大小進(jìn)行分頁顯示,然后還能提示文件的百分比;

          [root@localhost ~]# more /etc/profile

           


          2.1 more 的語法、參數(shù)和命令;

          more [參數(shù)選項(xiàng)] [文件]

           

          參數(shù)如下:
                      +num			從第num行開始顯示;
                      -num			定義屏幕大小,為num行;
                      +/pattern  	從pattern 前兩行開始顯示;
                      -c			從頂部清屏然后顯示;
                      -d			提示Press space to continue, 'q' to quit.(按空格鍵繼續(xù),按q鍵退出),禁用響鈴功能;
                      -l 			忽略Ctrl+l (換頁)字符;
                      -p 			通過清除窗口而不是滾屏來對文件進(jìn)行換頁。和-c參數(shù)有點(diǎn)相似;
                      -s				把連續(xù)的多個(gè)空行顯示為一行;
                      -u				把文件內(nèi)容中的下劃線去掉
                      

          退出more的動(dòng)作指令是q


          2.2 more 的參數(shù)應(yīng)用舉例;

          [root@localhost ~]# more -dc /etc/profile 注:顯示提示,并從終端或控制臺頂部顯示;
          [root@localhost ~]# more +4 /etc/profile 注:從profile的第4行開始顯示;
          [root@localhost ~]# more -4 /etc/profile 注:每屏顯示4行;
          [root@localhost ~]# more +/MAIL /etc/profile 注:從profile中的第一個(gè)MAIL單詞的前兩行開始顯示;

           


          2.3 more 的動(dòng)作指令;

          我們查看一個(gè)內(nèi)容較大的文件時(shí),要用到more的動(dòng)作指令,比如ctrl+f(或空格鍵) 是向下顯示一屏,ctrl+b是返回上一屏; Enter鍵可以向下滾動(dòng)顯示n行,要通過定,默認(rèn)為1行;

          我們只說幾個(gè)常用的; 自己嘗試一下就知道了;

          Enter   	   向下n行,需要定義,默認(rèn)為1行;
                      Ctrl+f  		向下滾動(dòng)一屏;
                      空格鍵        		向下滾動(dòng)一屏;
                      Ctrl+b		返回上一屏;
                      =		     		輸出當(dāng)前行的行號;
                      :f 	  		輸出文件名和當(dāng)前行的行號;
                      v		  		調(diào)用vi編輯器;
                      ! 命令          		調(diào)用Shell,并執(zhí)行命令;
                      q 				退出more
                      

          當(dāng)我們查看某一文件時(shí),想調(diào)用vi來編輯它,不要忘記了v動(dòng)作指令,這是比較方便的;


          2.4 其它命令通過管道和more結(jié)合的運(yùn)用例子;

          比如我們列一個(gè)目錄下的文件,由于內(nèi)容太多,我們應(yīng)該學(xué)會(huì)用more來分頁顯示。這得和管道 | 結(jié)合起來,比如:

          [root@localhost ~]# ls -l /etc |more

           


          3、less 查看文件內(nèi)容 工具;

          less 工具也是對文件或其它輸出進(jìn)行分頁顯示的工具,應(yīng)該說是linux正統(tǒng)查看文件內(nèi)容的工具,功能極其強(qiáng)大;您是初學(xué)者,我建議您用less。由于less的內(nèi)容太多,我們把最常用的介紹一下;


          3.1 less的語法格式;

          less [參數(shù)] 文件

           

          常用參數(shù)

          -c 從頂部(從上到下)刷新屏幕,并顯示文件內(nèi)容。而不是通過底部滾動(dòng)完成刷新;
          -f 強(qiáng)制打開文件,二進(jìn)制文件顯示時(shí),不提示警告;
          -i 搜索時(shí)忽略大小寫;除非搜索串中包含大寫字母;
          -I 搜索時(shí)忽略大小寫,除非搜索串中包含小寫字母;
          -m 顯示讀取文件的百分比;
          -M 顯法讀取文件的百分比、行號及總行數(shù);
          -N 在每行前輸出行號;
          -p pattern 搜索pattern;比如在/etc/profile搜索單詞MAIL,就用 less -p MAIL /etc/profile
          -s 把連續(xù)多個(gè)空白行作為一個(gè)空白行顯示;
          -Q 在終端下不響鈴;

           

          比如:我們在顯示/etc/profile的內(nèi)容時(shí),讓其顯示行號;

          [root@localhost ~]# less -N /etc/profile

           


          3.2 less的動(dòng)作命令;

          進(jìn)入less后,我們得學(xué)幾個(gè)動(dòng)作,這樣更方便 我們查閱文件內(nèi)容;最應(yīng)該記住的命令就是q,這個(gè)能讓less終止查看文件退出;

          動(dòng)作

          回車鍵 向下移動(dòng)一行;
          y 向上移動(dòng)一行;
          空格鍵 向下滾動(dòng)一屏;
          b 向上滾動(dòng)一屏;
          d 向下滾動(dòng)半屏;
          h less的幫助;
          u 向上洋動(dòng)半屏;
          w 可以指定顯示哪行開始顯示,是從指定數(shù)字的下一行顯示;比如指定的是6,那就從第7行顯示;
          g 跳到第一行;
          G 跳到最后一行;
          p n% 跳到n%,比如 10%,也就是說比整個(gè)文件內(nèi)容的10%處開始顯示;
          /pattern 搜索pattern ,比如 /MAIL表示在文件中搜索MAIL單詞;
          v 調(diào)用vi編輯器;
          q 退出less
          !command 調(diào)用SHELL,可以運(yùn)行命令;比如!ls 顯示當(dāng)前列當(dāng)前目錄下的所有文件;

           

          就less的動(dòng)作來說,內(nèi)容太多了,用的時(shí)候查一查man less是最好的。在這里就不舉例子了;


          4、head 工具,顯示文件內(nèi)容的前幾行;

          head 是顯示一個(gè)文件的內(nèi)容的前多少行;

          用法比較簡單;

          head -n 行數(shù)值 文件名;

           

          比如我們顯示/etc/profile的前10行內(nèi)容,應(yīng)該是:

          [root@localhost ~]# head -n 10 /etc/profile

           


          5、tail 工具,顯示文件內(nèi)容的最后幾行;

          tail 是顯示一個(gè)文件的內(nèi)容的前多少行;

          用法比較簡單;

          tail -n 行數(shù)值 文件名;

           

          比如我們顯示/etc/profile的最后5行內(nèi)容,應(yīng)該是:

          [root@localhost ~]# tail -n 5 /etc/profile
          posted on 2011-01-18 14:43 xzc 閱讀(1160) 評論(4)  編輯  收藏 所屬分類: linux/unix

          評論:
          # re: Linux 文件內(nèi)容查看工具介紹 2011-01-18 14:44 | xzc
          從627330行開始查看文件
          more +627330 jh_data_20110118.txt  回復(fù)  更多評論
            
          # re: Linux 文件內(nèi)容查看工具介紹[未登錄] 2011-03-24 11:17 | xzc
          1. 如果你只想看文件的前5行,可以使用head命令,
          如: head -5 /etc/passwd
          2. 如果你想查看文件的后10行,可以使用tail命令,
          如: tail -10 /etc/passwd
          3. 你知道怎么查看文件中間一段嗎?你可以使用sed命令
          如: sed -n '5,10p' /etc/passwd 這樣你就可以只查看文件的第5行到第10行。
            回復(fù)  更多評論
            
          # re: Linux 文件內(nèi)容查看工具介紹[未登錄] 2011-03-24 11:17 | xzc
          我們經(jīng)常會(huì)遇到需要取出分字段的文件的某些特定字段,例如/etc/password就是通過“:”分隔各個(gè)字段的。可以通過cut命令來實(shí)現(xiàn)。例如,我們希望將系統(tǒng)賬號名保存到特定的文件,就可以:
            cut -d: -f 1 /etc/passwd > /tmp/users
            -d用來定義分隔符,默認(rèn)為tab鍵,-f表示需要取得哪個(gè)字段。
            當(dāng)然也可以通過cut取得文件中每行中特定的幾個(gè)字符,例如:
            cut -c3-5 /etc/passwd
            就是輸出/etc/passwd文件中每行的第三到第五個(gè)字符。
            -c 和 -f 參數(shù)可以跟以下子參數(shù):
            N 第N個(gè)字符或字段
            N- 從第一個(gè)字符或字段到文件結(jié)束
            N-M 從第N個(gè)到第M個(gè)字符或字段
            -M 從第一個(gè)到第N個(gè)字符或字段
            回復(fù)  更多評論
            
          # re: Linux 文件內(nèi)容查看工具介紹[未登錄] 2011-03-24 11:20 | xzc
          取2023830到2023850行之間的記錄
          sed -n '2023830,2023850p' jh_data_20110324.txt >xzc.txt  回復(fù)  更多評論
            
          主站蜘蛛池模板: 昌乐县| 新闻| 惠州市| 宣化县| 沈阳市| 廉江市| 盐源县| 绍兴市| 常德市| 耿马| 阳曲县| 南靖县| 泰州市| 盘锦市| 萝北县| 黔东| 息烽县| 潼南县| 吉安市| 滦南县| 霍林郭勒市| 巴彦县| 镇沅| 改则县| 偃师市| 和静县| 合山市| 长治县| 四川省| 靖江市| 涟源市| 柏乡县| 淅川县| 民乐县| 秭归县| 凯里市| 大姚县| 沙湾县| 南开区| 黔南| 文水县|