cat:從第一行開始顯示文本內容(適用於內容較少的)
tac:從最后一行開始顯示,是 cat 的逆順序
more:一頁一頁的顯示文本內容(適用於內容較多的)
less:與 more 類似,但是比 more 更好的是,它可以往前翻頁!
head:只看文本的前面幾行
tail:只看文本的后面幾行
nl:顯示文本內容與行號
1、cat命令
cat命令常常用於查看內容較少的文件。很多人把這個命令叫做“小貓咪”命令,但cat其實是 concatenate(連續) 的縮寫,即連續顯示文本內容。
- 命令格式:cat [參數選項] [文件名]
-n 或 --number:由 1 開始對所有輸出的行數編號。
-b 或 --number-nonblank:和 -n 相似,只不過對於空白行不編號。
-s 或 --squeeze-blank:當遇到有連續兩行以上的空白行,就代換為一行的空白行。
-v 或 --show-nonprinting:使用 ^ 和 M- 符號,除了 LFD 和 TAB 之外。
-E 或 --show-ends: 在每行結束處顯示 $。
-T 或 --show-tabs: 將 TAB 字符顯示為 ^I。
-A, --show-all:等價於 -vET。
-e:等價於"-vE"選項;
-t:等價於"-vT"選項;
例如:
cat -n /etc/profile
2、tac命令
tac命令的正好與cat命令相反,是從文件末尾開始顯示。
例如:
tac -n /etc/profile
3、more命令
more命令適用於查看內容較多的文件。因為他可以實時顯示百分比以提示現在已經閱讀了多少內容。
- 命令格式:more [參數選項] [文件名]
-num 一次顯示的行數
-d 提示使用者,在畫面下方顯示 [Press space to continue, 'q' to quit.] ,如果使用者按錯鍵,則會顯示 [Press 'h' for instructions.] 而不是 '嗶' 聲
-l 取消遇見特殊字元 ^L(送紙字元)時會暫停的功能
-f 計算行數時,以實際上的行數,而非自動換行過后的行數(有些單行字數太長的會被擴展為兩行或兩行以上)
-p 不以卷動的方式顯示每一頁,而是先清除螢幕后再顯示內容
-c 跟 -p 相似,不同的是先顯示內容再清除其他舊資料
-s 當遇到有連續兩行以上的空白行,就代換為一行的空白行
-u 不顯示下引號 (根據環境變數 TERM 指定的 terminal 而有所不同)
+/pattern 在每個文檔顯示前搜尋該字串(pattern),然后從該字串之后開始顯示
+num 從第 num 行開始顯示
fileNames 欲顯示內容的文檔,可為復數個數
操作命令:
- Enter 向下n行,需要定義。默認為1行
- Ctrl+F 向下滾動一屏
- 空格鍵 向下滾動一屏
- Ctrl+B 返回上一屏
- = 輸出當前行的行號
- :f 輸出文件名和當前行的行號
- V 調用vi編輯器
- !命令 調用Shell,並執行命令
- q 退出more
例如:
一次顯示10行
more -10 /etc/profile
4、less命令
less也適用於查看內容較多的文件。less比more更為靈活,因為less可以往上、往下翻頁。按下鍵盤上PgUp鍵可以往上翻頁,按下PgDn可以往下翻頁。但是less命令不會實時顯示當前閱讀的百分比。
- 命令格式:less [參數選項] [文件名]
參數說明:
- -b <緩沖區大小> 設置緩沖區的大小
- -e 當文件顯示結束后,自動離開
- -f 強迫打開特殊文件,例如外圍設備代號、目錄和二進制文件
- -g 只標志最后搜索的關鍵詞
- -i 忽略搜索時的大小寫
- -m 顯示類似more命令的百分比
- -N 顯示每行的行號
- -o <文件名> 將less 輸出的內容在指定文件中保存起來
- -Q 不使用警告音
- -s 顯示連續空行為一行
- -S 行過長時間將超出部分舍棄
- -x <數字> 將"tab"鍵顯示為規定的數字空格
- /字符串:向下搜索"字符串"的功能
- ?字符串:向上搜索"字符串"的功能
- n:重復前一個搜索(與 / 或 ? 有關)
- N:反向重復前一個搜索(與 / 或 ? 有關)
- b 向上翻一頁
- d 向后翻半頁
- h 顯示幫助界面
- Q 退出less 命令
- u 向前滾動半頁
- y 向前滾動一行
- 空格鍵 滾動一頁
- 回車鍵 滾動一行
- [pagedown]: 向下翻動一頁
- [pageup]: 向上翻動一頁
例如:
1.查看文件
less /etc/profile
2.ps查看進程信息並通過less分頁顯示
ps -ef |less
3.查看命令歷史使用記錄並通過less分頁顯示
history |less
4.瀏覽多個文件
less /etc/rpc /etc/profile
輸入 :n 后,切換到 /etc/profile
輸入 :p 后,切換到 /etc/rpc
5、head命令
head命令用於查看文件的前n行
例如: 查看/etc/profile文件的前20行
head -n 20 /etc/profile
6、tail命令
tail命令與head命令相反,tail命令用於查看文件后n行內容
-f 循環讀取
-q 不顯示處理信息
-v 顯示詳細的處理信息
-c<數目> 顯示的字節數
-n<行數> 顯示文件的尾部 n 行內容
--pid=PID 與-f合用,表示在進程ID,PID死掉之后結束
-q, --quiet, --silent 從不輸出給出文件名的首部
-s, --sleep-interval=S 與-f合用,表示在每次反復的間隔休眠S秒
例如:
1.查看/etc/profile文件的后20行
tail -n 20 /etc/profile
2.查看最后1000行的日志並跟蹤
tailf -1000 文件名稱
7、nl命令
nl命令可以顯示內容的同時顯示行號,與cat -n命令的作用差不多:
例如:查看/etc/profile並顯示行號
nl /etc/profile
tailf、tail -f、tail -F三者區別
https://blog.csdn.net/aguoxin/article/details/103975081
linux中grep命令的用法
https://www.cnblogs.com/flyor/p/6411140.html
grep -C 5 foo file 顯示file文件里匹配foo字串那行以及上下5行
grep -B 5 foo file 顯示foo及前5行
grep -A 5 foo file 顯示foo及后5行
tailf -1000 demo.log | grep "/path"
組合命令:
cat -n demo | grep '/path' -C 5
查看文件目錄大小
- du -ach * #這個能看到當前目錄下的所有文件占用磁盤大小和總大小
- du -sh #查看當前目錄總大小
- du -sh * #查看所有子目錄大小
- du -sh ./* #查看當前目錄下所有文件/文件夾的大小
- lsof | grep delete #如果懷疑刪掉的數據還在占用磁盤空間試試這個
- kill -9 pid #結束掉進程就能釋放磁盤空間了
cut命令
通過以下命名可以獲取當前請求的ip top5 的數量(后續如果對日志有統計訪問這些下述指令有可能用的上)
#過濾tcp請求 然后打印第5列的值 按照:分隔取第一個值進行排序后 按照臨近的ip 匯總統計數量,按照數量排升序,取前5
netstat -ntu | grep tcp | awk '{print $5}' | cut -d: -f1 | sort | uniq -c |sort -nr | head -5
查看時間段日志:sed -n '/起始時間/,/結束時間/p' 日志文件