標籤:使用 os 檔案 for linux python 應用 window
cut -- 將行根據需求分成指定的片段
常用參數:
-d 以。。。為分割符 -d: 以:分割行(類似於python中的split)
-f 得到分割後的某個列 -f1-3 得到分割後的第1個到第3個列 (即1,2,3列,這裡面是從1開始的,而不是0)
-c 指定位置字元 -c1 得到行的第一個字元
grep -- 尋找常值內容
常用參數:
-i 忽略大小寫
-n 顯示行數
-An 顯示尋找到的字元的後(After)n行
-Bn 顯示尋找到的字元的前(Before)n行
-v 顯示不含有該字元的行
例子:
grep yechengzhou /特長/passwd | cut -d: f6 (得到yechengzhou使用者的家目錄)
wc -- 統計文本資訊
-l 行
-w 單詞
-m 字元
-c 位元組
不加參數 wc filename 得到結果為
行數 單詞數 字元數 檔案名稱
sort -- 對常值內容進行排序
預設 根據首字母排序
參數:
-r 倒序
-n 指定基於數字進行排序
-f 忽略大小寫
-u 重複資料刪除行 (or find | uniq 只能刪除相鄰的重複行)
-t c 根據c為分隔字元將行分割成列,並將列排序
diff -- 比較兩個檔案的區別
-i 忽略大小寫
-b 忽略空格數量的變化
-u 統一顯示比較資訊(一般用於產生patch)
tr -- 對文本進行處理, 只針對標準輸出,如果要修改檔案內容需要重新導向
tr -d "TMD" < filename 刪除文本中的TMD 輸出, 檔案內容不變
tr ‘abc‘ ‘ABC‘ < filename 將檔案中的小寫a,b,c替換成A,B,C, 檔案內容不變
-s , 刪除所有 str_from 重複出現字元序列,只保留一個 ,即重複字串壓縮為一個
【一個很經典的應用就是把不規律的空格縮減為一個空格: tr -s ‘ ‘ filename】
sed -- 搜尋替換,使用Regex處理, 替換後標準輸出
sed 正則 檔案
例子:
sed "1,50s/linux/unix/g" filename 將filename中的1-50行的所有linux替換成Unix (/g代表所有, 不加/g只替換第一個)
sed -f sedfile filename根據sedfile中的內容進行sed操作(比如說sedfile 的內容是 "s/linux/unix/g" 那麼就是將filename中的所有linux替換成unix)
sed -e "s/linux/unix/g" -e "s/windows/OS/g" filename 同時做多個替換