Linux檔案內容查看工具介紹

來源:互聯網
上載者:User

 

1、cat 顯示檔案串連檔案內容的工具;

 

cat 是一個文字檔查看和串連工具。查看一個檔案的內容,用cat比較簡單,就是cat 後面直接接檔案名稱。

 

比如:

 

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

 

 

為了便於新手弟兄靈活掌握這個工具,我們多說一點常用的參數;

 

 

1.0 cat 文法結構;

 

 

 

cat [選項] [檔案]...

 

 

選項

  -A, --show-all           等價於-vET

  -b, --number-nonblank    對非空輸出行編號

  -e                       等價於-vE

  -E, --show-ends          在每行結束處顯示$

  -n, --number             對輸出的所有行編號

  -s, --squeeze-blank      不輸出多行空行

  -t                       與-vT 等價

  -T, --show-tabs          將跳格字元顯示為^I

  -u                       (被忽略)

  -v, --show-nonprinting   使用^ 和M- 引用,除了LFD 和TAB 之外

      --help     顯示此協助資訊並離開

 

1.1 cat 查看檔案內容執行個體;

 

 

 

[root@localhost ~]# cat /etc/profile    註:查看/etc/目錄下的profile檔案內容;

[root@localhost ~]# cat -b /etc/fstab   註:查看/etc/目錄下的profile內容,並且對非空白行進行編號,行號從1開始;

[root@localhost ~]# cat -n /etc/profile    註:對/etc目錄中的profile的所有的行(包括空白行)進行編號輸出顯示;

[root@localhost ~]# cat  -E /etc/profile     註:查看/etc/下的profile內容,並且在每行的結尾處附加$符號;

 

 

cat 加參數-n 和nl工具差不多,檔案內容輸出的同時,都會在每行前面加上行號;

 

 

 

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

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

 

 

cat 可以同時顯示多個檔案的內容,比如我們可以在一個cat命令上同時顯示兩個檔案的內容;

 

 

 

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

 

 

cat 對於內容極大的檔案來說,可以通過管道|傳送到more 工具,然後一頁一頁的查看;

 

 

 

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

 

 

 

1.2 cat 的建立、串連檔案功能執行個體;

 

 

cat 有建立檔案的功能,建立檔案後,要以EOF或STOP結束;

 

 

 

[root@localhost ~]# cat >  linuxsir.org.txt  << EOF  註:建立linuxsir.org.txt檔案;

> 我來測試cat 建立檔案,並且為檔案輸入內容;       註:這是為linuxsir.org.txt檔案輸入內容;

> 北南南北 測試;                   註:這是為linuxsir.org.txt檔案輸入內容;

> EOF   註:退出編輯狀態;

 

[root@localhost ~]# cat linuxsir.org.txt  註:我們查看一下linuxsir.org.txt檔案的內容;

 

我來測試cat 建立檔案,並且為檔案輸入內容;

北南南北 測試;

 

 

cat 還有向已存在的檔案追加內容的功能;

 

 

 

[root@localhost ~]# cat  linuxsir.txt 註:查看已存在的檔案linuxsir.txt 內容;

I am BeiNanNanBei From LinuxSir.Org .    註:內容行

我正在為cat命令寫文檔

 

 

[root@localhost ~]# cat >> linuxsir.txt << EOF   註:我們向linuxsir.txt檔案追加內容;

> 我來測試cat向文檔追加內容的功能;       註:這是追回的內容

> OK?

> OK~

> 北南 呈上

> EOF   註:以EOF退出;

 

 

[root@localhost ~]# cat linuxsir.txt  註:查看檔案內容,看是否追回成功。

I am BeiNanNanBei From LinuxSir.Org .

我正在為cat命令寫文檔

 

我來測試cat向文檔追加內容的功能;  

OK?

OK~

北南 呈上

 

 

 

cat 串連多個檔案的內容並且輸出到一個新檔案中;

 

 

假設我們有sir01.txt、sir02.tx和sir03.txt ,並且內容如下;

 

 

 

[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 三個檔案串連在一起(也就是說把這三個檔案的內容都接在一起)並輸出到一個新的檔案sir04.txt 中。

 

注意:其原理是把三個檔案的內容串連起來,然後建立sir04.txt檔案,並且把幾個檔案的內容同時寫入sir04.txt中。特別值得一提的是,如果您輸入到一個已經存在的sir04.txt 檔案,會把sir04.txt內容清空。

 

 

 

[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 把一個或多個已存在的檔案內容,追加到一個已存在的檔案中

 

 

 

[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

 

 

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

 

 

2、more 檔案內容或輸出查看工具;

 

 

more 是我們最常用的工具之一,最常用的就是顯示輸出的內容,然後根據視窗的大小進行分頁顯示,然後還能提示檔案的百分比;

 

 

 

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

 

 

 

2.1 more 的文法、參數和命令;

 

 

 

more [參數選項] [檔案]

 

 

參數如下:

+num                    從第num行開始顯示;

-num                     定義螢幕大小,為num行;

+/pattern       從pattern 前兩行開始顯示;

-c                  從頂部清屏然後顯示;

-d                  提示Press space to continue, 'q' to quit.(按空格鍵繼續,按q鍵退出),禁用響鈴功能;

-l                  忽略Ctrl+l (換頁)字元;

-p                 通過清除視窗而不是滾屏來對檔案進行換頁。和-c參數有點相似; 

-s                          把連續的多個空行顯示為一行;

-u                         把檔案內容中的底線去掉

退出more的動作指令是q

 

 

2.2 more 的參數應用舉例;

 

 

 

[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中的第一個MAIL單詞的前兩行開始顯示;

 

 

 

2.3 more 的動作指令;

 

我們查看一個內容較大的檔案時,要用到more的動作指令,比如ctrl+f(或空格鍵) 是向下顯示一屏,ctrl+b是返回上一屏;Enter鍵可以向下滾動顯示n行,要通過定,預設為1行;

 

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

 

Enter      向下n行,需要定義,預設為1行;

Ctrl+f           向下滾動一屏;

空格鍵                   向下滾動一屏;

Ctrl+b            返回上一屏;

=                             輸出當前行的行號;

:f                 輸出檔案名和當前行的行號;

v                         調用vi編輯器;

! 命令                  調用Shell,並執行命令;

q                          退出more

當我們查看某一檔案時,想調用vi來編輯它,不要忘記了v動作指令,這是比較方便的;

 

 

2.4 其它命令通過管道和more結合的運用例子;

 

比如我們列一個目錄下的檔案,由於內容太多,我們應該學會用more來分頁顯示。這得和管道| 結合起來,比如:

 

 

 

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

 

 

 

3、less 查看檔案內容 工具;

 

less 工具也是對檔案或其它輸出進行分頁顯示的工具,應該說是linux正統查看檔案內容的工具,功能極其強大;您是初學者,我建議您用less。由於less的內容太多,我們把最常用的介紹一下;

 

 

3.1 less的文法格式;

 

 

 

less [參數]  檔案

 

 

常用參數

 

-c    從頂部(從上到下)重新整理螢幕,並顯示檔案內容。而不是通過底部滾動完成重新整理;

-f 強制開啟檔案,二進位檔案顯示時,不提示警告;

-i     搜尋時忽略大小寫;除非搜尋串中包含大寫字母;

-I     搜尋時忽略大小寫,除非搜尋串中包含小寫字母;

-m 顯示讀取檔案的百分比;

-M 顯法讀取檔案的百分比、行號及總行數;

-N   在每行前輸出行號;

-p  pattern     搜尋pattern;比如在/etc/profile搜尋單詞MAIL,就用less -p MAIL /etc/profile

-s 把連續多個空白行作為一個空白行顯示;

-Q   在終端下不響鈴;

 

 

比如:我們在顯示/etc/profile的內容時,讓其顯示行號;

 

 

 

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

 

 

 

3.2 less的動作命令;

 

進入less後,我們得學幾個動作,這樣更方便 我們查閱檔案內容;最應該記住的命令就是q,這個能讓less終止查看檔案退出;

 

動作

 

斷行符號鍵    向下移動一行;

y     向上移動一行;

空格鍵    向下滾動一屏;

b     向上滾動一屏;

d     向下滾動半屏;

h     less的協助;

u     向上洋動半屏;

w     可以指定顯示哪行開始顯示,是從指定數位下一行顯示;比如指定的是6,那就從第7行顯示;

g     跳到第一行;

G     跳到最後一行;

p n%       跳到n%,比如10%,也就是說比整個檔案內容的10%處開始顯示;

/pattern 搜尋pattern ,比如/MAIL表示在檔案中搜尋MAIL單詞;

v 調用vi編輯器;

q     退出less

!command      調用SHELL,可以運行命令;比如!ls 顯示當前列目前的目錄下的所有檔案;

 

 

就less的動作來說,內容太多了,用的時候查一查man less是最好的。在這裡就不舉例子了;

 

 

4、head 工具,顯示檔案內容的前幾行;

 

head 是顯示一個檔案的內容的前多少行;

 

用法比較簡單;

 

 

 

head  -n  行數值  檔案名稱;

 

 

比如我們顯示/etc/profile的前10行內容,應該是:

 

 

 

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

 

 

 

5、tail 工具,顯示檔案內容的最後幾行;

 

tail 是顯示一個檔案的內容的前多少行;

 

用法比較簡單;

 

 

 

tail   -n  行數值  檔案名稱;

 

 

比如我們顯示/etc/profile的最後5行內容,應該是:

 

 

 

[root@localhost ~]# tail  -n 5 /etc/profile

 

 

 

6、關於本文;

 

 

7、後記;

 

 

8、參考文檔;

 

 

9、相關文檔;

 

《關於Linux 檔案系統中路徑的理解》

《Linux 檔案和目錄管理之列出、刪除、複製、移動及改名》

《Linux 檔案類型 及檔案的副檔名》

《簡述Linux 檔案系統的目錄結構》

《Linux 使用者(user)和使用者組(group)管理概述》

《Linux 檔案和目錄的屬性》

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.