Linux的文件查看的常用命令

1. 前言

今天看到團隊里的以為大神使用xshell遠程訪問公司的服務器,通過日志查找我們測試時出現的一些bug,看到了他使用了一個tailf 命令查看日志的動態顯示,通過分析日志,很快就定位到了一個后臺調試一直都沒發現的bug。所以自己百度總結一些常用的查看文件命令的使用。

2. 目錄

命令 說明
cat 由第一行開始顯示內容,并將所有內容輸出
tac 從最后一行倒序顯示內容,并將所有內容輸出
more 根據窗口大小,一頁一頁的現實文件內容
less 和more類似,但其優點可以往前翻頁,而且進行可以搜索字符
head 只顯示頭幾行
tail 只顯示最后幾行
nl 類似于cat -n,顯示時輸出行號
tailf 類似于tail -f
grep 文件內容查看

2.1 cat 和 tac 命令的使用

用法: cat [options] filename
options:
-A: 顯示全部.
-E: 在每一行的后面加上"$"符號結尾.
-b: 在所有的非空白行上標示編號.
taccat的倒寫,cat是從第一行開始顯示,而tac則是從最后一行開始倒著顯示。

2.2 more 和 less

more的功能是將文件從第一行開始,根據輸出窗口的大小,適當的輸出文件內容。當一頁無法全部輸出時,可以用回車鍵向下翻行,用空格鍵向下翻頁。退出查看頁面,請按q鍵。另外,more還可以配合管道符“|”(pipe)使用,例如:ls -al | more

  • more的語法:more filename
    Enter 向下n行,需要定義,默認為1行;
    Ctrl f 向下滾動一屏;
    空格鍵 向下滾動一屏;
    Ctrl b 返回上一屏;
    = 輸出當前行的行號;
    :f輸出文件名和當前行的行號;
    v 調用vi編輯器;
    ! 命令 調用Shell,并執行命令;
    q 退出more

  • less的功能和more相似,但是使用more無法向前翻頁,只能向后翻。
    less可以使用【pageup】【pagedown】鍵進行前翻頁和后翻頁,這樣看起來更方便。
    less:
    功能:分頁顯示文件,可以靈活翻頁??梢越Y合其他命令使用。
    優勢:用于查看不需要監控變化的文件。

    使用:

    • 查看操作 less filename
      Enter(回車) 下一行
      b 向上翻頁
      空格 向下翻頁
      / 查找字段(與vim查找相似)
      shift+g 到文件尾
      g 到文件頭
    • 結合使用。如:
      ps -ef | less
      history | less
      實現靈活的翻頁查看,查找等功能。

2.2 head 和 tail

headtail通常使用在只需要讀取文件的前幾行或者后幾行的情況下使用。head的功能是顯示文件的前幾行內容
head的語法:head [n number]文件名 (number 顯示行數)

tail跟它的英文意思一樣,就是可以查看從文件尾開始顯示末尾的幾行,唯一和 tac 的不同之處就是tail 命令是可以動態監控文件內容變化的,常用的命令就是tail -f

tail 命令從指定點開始將文件寫到標準輸出.使用tail命令的-f選項可以方便的查閱正在改變的日志文件,tail -f filename會把filename里最尾部的內容顯示在屏幕上,并且不但刷新,使你看到最新的文件內容.
1.命令格式;
tail[必要參數][選擇參數][文件]
2.命令功能:
用于顯示指定文件末尾內容,不指定文件時,作為輸入信息進行處理。常用查看日志文件。
3.命令參數:
-f循環讀取
-q不顯示處理信息
-v顯示詳細的處理信息
-c<數目> 顯示的字節數
-n<行數> 顯示行數
--pid=PID 與-f合用,表示在進程ID,PID死掉之后結束.
-q, --quiet, --silent 從不輸出給出文件名的首部
-s, --sleep-interval=S 與-f合用,表示在每次反復的間隔休眠S秒

2.3 nl 和 tailf

nl的功能和cat -n一樣,同樣是從第一行輸出全部內容,并且把行號顯示出來
nl的語法:nl 文件名

tailf命令幾乎等同于tail -f,嚴格說來應該與tail --follow=name更相似些。當文件改名之后它也能繼續跟蹤,特別適合于日志文件的跟蹤(follow the growth of a log file)。與tail -f不同的是,如果文件不增長,它不會去訪問磁盤文件(It is similar to tail -f but does not access the file when it is not growing. This has the side effect of not updating the access time for the file, so a filesystem flush does not occur periodically when no log activity is happening.)。tailf特別適合那些便攜機上跟蹤日志文件,因為它能省電,因為減少了磁盤訪問嘛(tailf is extremely useful for monitoring log files on a laptop when logging is infrequent and the user desires that the hard disk spin down to conserve battery life.)。tailf命令不是個腳本,而是一個用C代碼編譯后的二進制執行文件,某些Linux安裝之后沒有這個命令,本文提供了怎么編譯安裝tailf命令的方法。
格式:tailf logfile
動態跟蹤日志文件logfile,最初的時候打印文件的最后10行內容。

2.4 grep命令的使用

grep是一個非常重要的命令,他是在指定的文本文件中查找某一內容,比方說我要在history這個文本文件中查找hell的內容,可以使用命令grep ls history
詳細可以參考grep的詳細使用

總結

其實linux的文件查看命令的用法是很靈活的,具體如何用好還是要看個人,很多東西并不是一下子學會的,而是一點一滴自己積累的。感謝我現在的公司給我的機會和挑戰

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • linux資料總章2.1 1.0寫的不好抱歉 但是2.0已經改了很多 但是錯誤還是無法避免 以后資料會慢慢更新 大...
    數據革命閱讀 12,237評論 2 33
  • 大家都知道,Linux系統提供了非常多非常多的命令或工具,這些命令都各有所長,都是系統需要的。但我們精力有限,要掌...
    劉振鋒閱讀 11,545評論 10 90
  • 有一天晚上,我正歪在床上,打算在微信群里說幾句英語,公司搞了一個線上的英語角活動,我負責每天早上英語金句晨讀內容的...
    yeyeazi閱讀 192評論 0 0
  • 前段時間不小心做了一個媒。女方是我的高中同學,男方是老公大學室友。兩個人在不同的城市,女子在北方讀研,男子在南方工...
    迪路貓閱讀 399評論 2 3
  • 1、在車上 從北京到上海距離大概有一千多公里,有京滬高速、京滬高鐵、飛機等好多種交通方式可以選擇,我選擇了我認為最...
    安得廣廈閱讀 174評論 0 0