自學Linux Shell3.6-文件查看命令file cat more less tail head

點擊返回 自學Linux命令行與Shell腳本之路html

3.6-文件查看命令file cat more less tail head

1.參看文件類型file

該命令用來識別文件類型,也可用來辨別一些文件的編碼格式。它是經過查看文件的頭部信息來獲取文件類型,而不是像Windows經過擴展名來肯定文件類型的。linux

file [-bcLvz][-f <名稱文件>][-m <魔法數字文件>...][文件或目錄...]
  • -b  列出辨識結果時,不顯示文件名稱。
  • -c  詳細顯示指令執行過程,便於排錯或分析程序執行的情形。
  • -f<名稱文件>  指定名稱文件,其內容有一個或多個文件名稱時,讓file依序辨識這些文件,格式爲每列一個文件名稱。
  • -L  直接顯示符號鏈接所指向的文件的類別。
  • -m<魔法數字文件>  指定魔法數字文件。
  • -v  顯示版本信息。
  • -z  嘗試去解讀壓縮文件的內容。
  • [文件或目錄...] 要肯定類型的文件列表,多個文件之間使用空格分開,可使用shell通配符匹配多個文件。


2.參看整個文件

1.cat命令 一次顯示整個文件,若是文件比較大,使用不是很方便; 一旦運行沒法控制後面的操做。shell

2.more命令  顯示文本內容時候,顯示每頁數據後暫停,此時可按空格健繼續顯示下一頁數據,或按Q鍵中止顯示。 只支持文本文件的基本移動。less

3.less命令也能夠分頁顯示文件,和more命令的區別就在於它支持上下鍵捲動屏幕,當結束瀏覽時,只要在less命令的提示符「: 」下按Q鍵便可。編輯器

        多數狀況下more和less命令會配合管道符來分頁輸出須要在屏幕上顯示的內容。ui

2.1 cat命令

cat命令是linux下的一個文本輸出命令,一般是用於觀看某個文件的內容的;
cat主要有三大功能:編碼

  • 1.一次顯示整個文件。cat   filename
  • 2.從鍵盤建立一個文件。cat  >  filename  只能建立新文件,不能編輯已有文件.
  • 3.將幾個文件合併爲一個文件。$cat   file1   file2  > file

cat [-AbeEnstTuv] [--help] [--version] fileNamespa

  • -n 或 –number 由 1 開始對全部輸出的行數編號
  • -b 或 –number-nonblank 和 -n 類似,只不過對於空白行不編號
  • -s 或 –squeeze-blank 當遇到有連續兩行以上的空白行,就代換爲一行的空白行
  • -v 或 –show-nonprinting

舉例1  查看文件,一次顯示全部內容, -n 加行號, -b空白行不編號。
命令行

舉例2 建立文件
在使用 "cat > filename.txt" 建立文件時,可採用下面步驟:3d

  • 鍵入cat > filename.txt 後回車 
  • 錄入文本內容; 
  • 鍵入回車; 
  • 在鍵盤上按下Ctrl+D (或者鍵入Control-D)。 

 

舉例3  cat 建立一個新文件,將其合併

2.2 more命令

 more (more) 該命令一次顯示一屏文本,滿屏後停下來,而且在屏幕的底部出現一個提示信息,給出至今己顯示的該文件的百分比,方便逐頁閱讀(file perusal filter for crt viewing) 。more名單中內置了若干快捷鍵

命令格式:

more [-dlfpcsu ] [-num ] [+/ pattern] [+ linenum] [file ... ] 

命令功能:

more命令和cat的功能同樣都是查看文件裏的內容,但有所不一樣的是more能夠按頁來查看文件的內容,還支持直接跳轉行等功能。

命令參數:

  • +n      從笫n行開始顯示
  • -n       定義屏幕大小爲n行
  • +/pattern 在每一個檔案顯示前搜尋該字串(pattern),而後從該字串前兩行以後開始顯示  
  • -c       從頂部清屏,而後顯示
  • -d       提示「Press space to continue,’q’ to quit(按空格鍵繼續,按q鍵退出)」,禁用響鈴功能
  • -l        忽略Ctrl+l(換頁)字符
  • -p       經過清除窗口而不是滾屏來對文件進行換頁,與-c選項類似
  • -s       把連續的多個空行顯示爲一行
  • -u       把文件內容中的下畫線去掉

經常使用操做命令

  • Enter    向下n行,須要定義。默認爲1行
  • Ctrl+F   向下滾動一屏
  • 空格鍵  向下滾動一屏
  • Ctrl+B  返回上一屏
  • =       輸出當前行的行號
  • :f     輸出文件名和當前行的行號
  • V      調用vi編輯器
  • !命令   調用Shell,並執行命令 
  • q       退出more

 舉例   more 分頁顯示,含有百分比 , +2 從第二行開始顯示,-2定義屏幕大小爲2行

2.3 less命令

 less命令式more命令的升級

  • -b<緩衝區大小> 設置緩衝區的大小
  • -e 當文件顯示結束後,自動離開
  • -f 強迫打開特殊文件,例如外圍設備代號、目錄和二進制文件
  • -g 只標誌最後搜索的關鍵詞
  • -i 忽略搜索時的大小寫
  • -m 顯示相似more命令的百分比
  • -N 顯示每行的行號
  • -o<文件名> 將less 輸出的內容在指定文件中保存起來
  • -Q 不使用警告音
  • -s 顯示連續空行爲一行
  • -S 行過長時間將超出部分捨棄
  • -x<數字> 將「tab」鍵顯示爲規定的數字空格

命令內部操做

2.3.1 按鍵功能以下:

  • b 向後翻一頁
  • d 向後翻半頁
  • h 顯示幫助界面
  • Q 退出less 命令
  • u 向前滾動半頁
  • y 向前滾動一行
  • 空格鍵 滾動一頁
  • 回車鍵 滾動一行

1) 向前搜索

  • / : 使用一個模式進行搜索,並定位到下一個匹配的文本
  • n : 向前查找下一個匹配的文本
  • N : 向後查找前一個匹配的文本

2) 向後搜索

  • ? : 使用模式進行搜索,並定位到前一個匹配的文本
  • n : 向後查找下一個匹配的文本
  • N : 向前查找前一個匹配的文本

2.3.2 全屏導航

  • ctrl + F :向前移動一屏
  • ctrl + B :向後移動一屏
  • ctrl + D :向前移動半屏
  • ctrl + U :向後移動半屏

2.3.4  單行導航

  • j : 向前移動一行
  • k : 向後移動一行

2.3.5 其它導航

  • G : 移動到最後一行
  • g : 移動到第一行
  • q / ZZ : 退出 less 命令

2.3.6 編輯文件

  • v : 進入編輯模式,使用配置的編輯器編輯當前文件

2.3.7 標記導航

當使用 less 查看大文件時,能夠在任何一個位置做標記,能夠經過命令導航到標有特定標記的文本位置。

  • ma : 使用 a 標記文本的當前位置
  • 'a : 導航到標記 a 處

2.3.8  瀏覽多個文件

方式一,傳遞多個參數給 less,就能瀏覽多個文件。

less file1 file2

方式二,正在瀏覽一個文件時,使用 :e 打開另外一個文件。

less file1
:e file2

當打開多個文件時,使用以下命令在多個文件之間切換

:n - 瀏覽下一個文件
:p - 瀏覽前一個文件

3.參看部分文件

3.1 tail 命令

tail [ -f ] [ -c Number | -n Number | -m Number | -b Number | -k Number ] [ File ]
參數解釋:

  • -f 該參數用於監視File文件增加。
  • -c Number 從 Number 字節位置讀取指定文件
  • -n Number 從 Number 行位置讀取指定文件。
  • -m Number 從 Number 多字節字符位置讀取指定文件,比方你的文件假設包括中文字,假設指定-c參數,可能致使截斷,但使用-m則會避免該問題。
  • -b Number 從 Number 表示的512字節塊位置讀取指定文件。
  • -k Number 從 Number 表示的1KB塊位置讀取指定文件。

 tail file   默認顯示文件後10行
 tail -3 file  顯示文件後3行 

3.2 head命令

head 與 tail 就像它的名字同樣的淺顯易懂,它是用來顯示開頭或結尾某個數量的文字區塊,tail 是看檔案的結尾,而head 用來顯示檔案的開頭至標準輸出中,默認head命令打印其相應文件的開頭10行。

head [參數]... [文件]...  

  •  -q 隱藏文件名
  • -v 顯示文件名
  • -c<字節> 顯示字節數
  • -n<行數> 顯示的行數

 

相關文章
相關標籤/搜索