1. 程式人生 > >shell: 檔案顯示命令cat、more、ls、tail、touch、詳解

shell: 檔案顯示命令cat、more、ls、tail、touch、詳解

cat命令

一般格式:cat [選項] 檔案
說明:該命令有兩項功能,其一是用來顯示檔案的內容,它依次讀取由引數file所 指明的檔案,將它們的內容輸出到標準輸出上;其二是連線兩個或多個檔案,如 cat fl f2 > f3將把檔案fl和幾的內容合併起來,然後通過輸出重定向符“>”的作用,將它們放入檔案f3中。
注意:當檔案較大時,文字在螢幕上迅速閃過(滾屏),使用者往往看不清所顯示的內容。因此,一般用more等命令分屏顯示。為了控制滾屏,可以按Ctrl+S鍵,停止滾屏;按Ctrl+Q鍵可以恢復滾屏。按Ctrl+C(中斷)鍵可以終止該命令的執行,並且返回Shell提示符狀態。
示例:(設ml和m2是當前目錄下的兩個檔案)
# cat f1 (在螢幕上顯示檔案ml的內容)
# cat f1 f2 (同時顯示檔案ml和m2的內容)

# cat f1 f2 > f3 (將檔案ml和m2合併後放入檔案file中)

more命令
more命令顯示檔案內容,每次顯示一屏。

一般格式:more [選項] 檔案
說明:該命令一次顯示一屏文字,滿屏後停下來,並且在螢幕的底部出現一個提示資訊,給出至今己顯示的該檔案的百分比:–More–(XX%)可以用下列不同的方法對提示做出回答:
①按Space鍵,顯示文字的下一屏內容。
②按Enier鍵,只顯示文字的下一行內容。
③按斜線符(l),接著輸入一個模式,可以在文字中尋找下一個相匹配的模式。
④按H鍵,顯示幫助屏,該屏上有相關的幫助資訊。
⑤按B鍵,顯示上一屏內容。
⑥按Q鍵,退出rnore命令。
常用選項:
-num,這個選項指定一個整數,表示一屏顯示多少行。
-d,在每屏的底部顯示以下更友好的提示資訊:
–More–(XX%) [Press space to continue, ’q’ to quit.]
而且當用戶按鍵時有錯誤,則顯示[Press ’h’, for instructions.]資訊,而不是簡單的報警。
-c或-p,不滾屏,在顯示下一屏之前先清屏。
-s,將檔案中連續的空白行壓縮成一個空白行顯示。
+/,該選項後的模式(Pattem)指定顯示每個檔案之前進行搜尋的字串。
+num,從行號num開始。
more命令在執行過程中還用到一些基於vi編輯器的互動式命令,這裡不做詳述。
示例:
①顯示檔案file的內容,但在顯示之前先清屏,並且在螢幕的最下方顯示完核的百分比。
# more -dc file
②顯示檔案file的內容,每10行顯示一次,而且在顯示之前先清屏。
# more -c -10 file

less命令
與more命令一樣,less命令也用來分屏顯示檔案的內容。但是二者存在差別:less命令允許使用者向前或向後瀏覽檔案,而 more命令只能向前瀏覽。用less命令顯示檔案時,用PageUp鍵向上翻頁,用PageDown鍵向下翻頁。要退出less程式,應按Q鍵。 less有幾種格式和很多選項,這裡不做詳述。

head命令
命令在螢幕上顯示指定檔案的開頭若干行。

一般格式:head [選項] file
說明:head命令在螢幕上顯示指定檔案的開頭若干行,行數由引數值來確定。顯示行數的預設值是10。
選項:
-c,-bytes=SIZE 顯示前面SIZE個位元組。
-n,-lines=NUMBER NUMBER的值指定顯示前面多少行。預設為10行。
-q,-quiet,–silent 不顯示給定檔案的標題。
-v,-verbose 始終顯示給定檔案的標題。
示例:
# head -5 file(顯示檔案file的前5行)
# head -v file(顯示檔案file的內容,並且給出檔名標題)
# head -q file(顯示檔案file的內容,但不列出檔名標題)

tail命令
tail命令在螢幕上顯示指定檔案的末尾若千行。

一般格式:tail [選項] [file]…
說明:tail命令在螢幕上顯示指定檔案的末尾10行。如果給定的檔案不止一個,則在顯示的每個檔案前面加一個檔名標題。如果沒有指定檔案或者檔名為“-”,則讀取標準輸入。
選項:
-c,–bytes=N 輸出最後N個位元組。
-f 當檔案增長時輸出附加的資料。
-n,-lines=N 輸出最後的N行,而不是預設的10行。
-q,-quiet,–silent 不輸出包含給定檔名的標題。
-v,-verbose 始終輸出包含給定檔名的標題。
注意:如果表示位元組或行數的N值之前有一個”+”號,則從檔案開頭的第N項開始顯示,而不是顯示檔案的最後N項。N值後面可以有後綴:b表示512,k表示1024,m表示1 048576(1M)。
示例:
# tail file (顯示檔案file的最後10行)
# tail +20 file (顯示檔案file的內容,從第20行至檔案末尾)
# tail -c 10 file (顯示檔案file的最後10個字元)

touch命令
可以修改指定檔案的時間標籤或者建立一個空檔案。

一般格式:touch [選項] 檔名…
說明:touch命令將會修改指定檔案的時間標籤,把已存在檔案的時間標籤更新為系統當前的時間(預設方式),它們的資料將原封不動地保留下來。如果該檔案尚未存在,則建立一個空的新檔案。
選項:
-a 僅改變指定檔案的存取時間。
-c 不建立任何檔案。
-m 僅改變指定檔案的修改時間。
-t STAMP 使用STAMP指定的時間標籤,而不是系統當前的時間。STAMP的格式為[[CC]YY]MMDDhhmm[.ss],其中,CC表示年份的前兩位,YY表示年份的後兩位,MM表示月份,DD表示日期,hh表示小時,mm表示分鐘,ss表示秒。
示例:
# touch ex2 在當前目錄下建立一個空檔案ex2。
然後,利用ls -l命令可以發現檔案ex2的大小為0,表示它是空檔案。