查看檔案與目錄
base64
$ base64 [-d] fileName
把檔案編碼成 base64 編碼
fileName 檔案名稱
-d 解碼 base64
cat
$ cat fileName
顯示檔案
$ cat > fileName
建立檔案,之前的內容會覆蓋
輸入完內容按 <Ctrl-D>
回到終端
$ cat >> fileName
建立檔案,內容添加在原檔案後方
輸入完內容按 <Ctrl-D>
回到終端cut
cut
$ cut [-c][-d][-f] fileName
每一行按照分隔符號剖析文字
-c 指定擷取的字元位置,預設為 1
-d 指定分隔符號字元,預設為 tab
-f 指定擷取的欄位位置,預設為 1
舉例
$ cut -c 1-10,20-30
從字元位置1到10,以及20到30
$ cut -c22- fileName
從字元位置 22 起開始保留到結尾(-)
$ cut -d' ' -f3 fileName
指定擷取欄位為第3個,並以空格為分隔符號
$ cut -f1-3 fileName
指定擷取第1到3的欄位
$ cut -f1,3 fileName
指定擷取第1和3的欄位
file
$ file [-f][-k][-z] fileName
識別檔案類型,尤其對沒有副檔名或錯誤的副檔名特別好用
-f 讀取檔案清單以便分析給定檔案
-k 不要停在第一個比對符合項目;要把所有符合類型的檔案都列出來
-z 檢視壓縮黨內部
head
$ head [-c][-number] path/to/file
顯示檔案開頭 10 行
-c 指定要輸出多少位元組
-number 指定行數,例如 -20
path/to/file 檔案位置
less
$ less path/to/file
查看檔案內容
按 /
可以搜尋關鍵字
按 n
跳下一個
英文有一句諺語 : less is more
應對了 less 和 more 指令
ls
$ ls [-a][-l][-s][-R] [path]
列出當前目錄中的檔案與子目錄
a 顯示隱藏檔案
l (long listing)詳細資料
s 顯示檔案大小,單位為區塊
R 找遍指定目錄的所有子目錄
path 指定目錄
more
$ more path/to/file
查看檔案內容
按 <Enter>
顯示下一行
按 q
離開
nl
$ nl [option] path/to/file
顯示檔案內容,並顯示行號
-ba 行數包含空白,預設不包含
sdiff
$ sdiff [-i][-s][-w] file1 file2
比對 file1 和 file2 檔案內容差異
-i 不區分大小寫 -s 不輸出相同行數 -w 輸出每一行字元數上限
舉例
$ sdiff -i -s -w100 file1 file2
$ cat file1 | sdiff - file2
- 代表比對標準輸入的內容
sha1sum
$ sha1sum [-c][--quiet] fileName
輸出 fileName 的訊息摘要
也就是此檔案的雜湊值
-c 檢查 fileName 已經產生雜湊訊息的檔案路徑內容
--quiet 只輸出比對失敗的檔案
tail
$ tail -f path/to/file
持續讀取檔案
並在新增資料行時立即顯示到標準輸出
$ tail -f path/to/file | command
同上,並進一步管線到其他指令
$ tail [-number] path/to/file
顯示檔案尾部 10 行
-number 指定行數,例如 -20
path/to/file 檔案位置
$ tail -n +2 path/to/file
從第2行開始顯示檔案
-n +2 指定由上往下第幾行開始
path/to/file 檔案位置
也可以重新導向到這裡
例如:
$ cat path/to/file | tail -n +2
$ tail --pid=$$ path/to/file
--pid 追蹤上游的程序
$$ 腳本的程序識別碼
path/to/file 檔案位置
uniq
$ uniq [-c][-f Number][-i] fileName.txt
消除重複的行數,需要先做排序
-c 印出重複的次數
-f 忽略前 Number 個欄位,預設以空格做排序
-i 忽略大小寫
範例
$ uniq -c fileName.txt
排序並印出重複次數
結果:
1 2020/08/21 10:30 Friday
2 2019/06/01 09:09 Saturday
$ uniq -c -f 1 fileName.txt
忽略前1個欄位後做排序,並印出重複次數
結果:
1 2020/08/21 10:30 Friday
2 2019/06/01 09:09 Saturday
wc
$ wc [-l]
顯示輸入檔案或標準輸入的行數、字數和字節數
-l 只顯示行數
xxd
$ xxd [-b][-l][r][-s]
以二進制或十六進制顯示檔案內容
-b 以二進制顯示,預設為十六進制
-l 指定印出位元組長度
-r 十六進制轉 ASCII 碼
-s 指定從第 n 個位元組開始輸出
舉例
$ xxd -s 5 -l 10 fileName
以十六進制輸出 fileName 檔案內容
從第5個位元組開始,印出10個位元組
Last updated