從心開始的CentOS學習筆記之五:文件內容查看命令cat、tac、nl、more、less

cat 由第一行開始顯示文件內容

tac 從最後一行開始顯示,可以看出 tac 是 cat 的倒着寫

nl 顯示的時候,並輸出行號

more 一頁一頁的顯示文件內容

less 與 more 類似,但是比 more 更好的是,可以往前翻頁

head 只顯示文件內容前面幾行

tail 只顯示文件內容後面幾行

od   以二進制等方式顯示文件內容

一、cat命令

cat [-AbEnTv] 文件名

選項與參數:

-A :相當於 -vET 的整合選項,可列出一些特殊字符而不是空白而已;

-b :列出行號,僅針對非空白行做行號顯示,空白行不標行號

-E :將結尾的斷行字符 $ 顯示出來;

-n :打印出行號,連同空白行也會有行號,與 -b 的選項不同;

-T :將 [tab] 按鍵以 ^I 顯示出來;

-v :列出一些看不出來的特殊字符

例:cat -An /etc/man_db.conf

(man_db.conf是用戶手冊配置文件)

snap034.jpg

默認下,cat一次將顯示文件的所有內容,當文件的行數超過顯示器的一屏時,用戶可能根來不及在屏幕上看結果。


二、tac命令

從文件尾反向顯示文件內容

下圖是tac cat 兩個命令顯示文件內容的差別

snap035.jpg


三、nl命令

格式:nl [-bnw] 文件

選項與參數:

-b :指定行號指定的方式,主要有兩種:

-b a :表示不論是否爲空行,也同樣列出行號(類似 cat -n);

-b t :如果有空行,空的那一行不要列出行號(默認值);

-n :列出行號表示的方法,主要有三種:

-n ln :行號在屏幕的最左方顯示;

-n rn :行號在自己字段的最右方顯示,且不加 0 ;

-n rz :行號在自己字段的最右方顯示,且加 0 ;

-w :行號字段的佔用的字符數。


-b a 和 -b t的差別

snap035.jpg


-n ln、-n rn、-n rz的差別

snap037.jpg


可翻頁查看文件內容命令

四、more

more /etc/man_db.conf

空格鍵 :代表向下翻一頁;

Enter :代表向下翻“一行”;

/字串 :代表在這個顯示的內容當中,向下查找“字串”這個關鍵字;

:f :立刻顯示出文件名以及目前顯示的行數;

q :代表立刻離開 more ,不再顯示該文件內容。

b 或 [ctrl]-b :代表往回翻頁,不過這動作只對文件有用。

snap037.jpg

但more無法向前翻頁。


五、less命令

在 more 的時候,我們並沒有辦法向前面翻, 只能往後面看,但若使用了 less 時,呵呵!就可以使用 [pageup] [pagedown] 等按鍵的功能來往前往後翻看文件.

除此之外,在 less 裏頭可以擁有更多的“搜尋”功能喔!不止可以向下查找,也可以向上查找.

可以輸入的指令有:

空白鍵 :向下翻動一頁;

[pagedown]:向下翻動一頁;

[pageup] :向上翻動一頁;

/字串 :向下搜尋“字串”的功能;

?字串 :向上搜尋“字串”的功能;

n :重複前一個搜尋 (與 / 或 ? 有關!)

N :反向的重複前一個搜尋 (與 / 或 ? 有關!)

g :前進到這個數據的第一行去;

G :前進到這個數據的最後一行去 (注意大小寫);

q :離開 less 這個程序;

其實 less 還有很多的功能,詳細的使用方式請使用 man less 查詢一下


六、head

格式:head [-n 行數] 文件名

默認顯示10行

snap039.jpg

當-n 後面接的數據爲負數,表示顯示從第一行記錄到總記錄數與參數-n所接數據之和之間的記錄。假設/etc/passwd有54行數據 ,執行 head -n -40 /etc/passwd,系統會顯示從第一條記錄到第14條(54-40=14)記錄的內容。


7、tail

顯示後幾行的內容

 格式:tail [-n 行數] 文件名(行數爲正爲負效果一樣)

           tail -f 文件名:持續顯示文件的內容,一直等到Ctrl+C纔會終止結束命令

snap040.jpg

由於/var/log/messages隨時會有數據寫入,如果想要讓該文件有數據寫入時就立刻顯示到屏幕上, 就利用 -f 這個選項,系統可以一直偵測/var/log/messages這個文件,新加入的數據都會被顯示到屏幕上,直到用戶按下[crtl]-c纔會離開tail命令操作!由於 messages 必須要 root 權限才能看,所以該範例得要使用 root 來查詢。

snap041.jpg

怎樣顯示 /etc/passwd 的第 11 到第 20 行的內容?

答:這個很容易實現,可以先取前 20 行,再取後十行,所以結果就是:“ head -n 20 /etc/passwd  | tail -n 10 ”,這樣就可以得到第 11 到第 20 行之間的內容了。


8、od

以二進制等方式顯示文件內容

格式:od [-t TYPE] 文件

-t :後面可以接各種“類型 (TYPE)”的輸出,例如:

a :利用默認的字符來輸出;

c :使用 ASCII 字符來輸出

d[size] :利用十進制(decimal)來輸出數據,每個整數佔用 size Bytes ;

f[size] :利用浮點數值(floating)來輸出數據,每個數佔用 size Bytes ;

o[size] :利用八進位(octal)來輸出數據,每個整數佔用 size Bytes ;

x[size] :利用十六進制(hexadecimal)來輸出數據,每個整數佔用 size Bytes ;

snap042.jpg


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章