Linux入門基礎:命令列文本處理工具 基於關鍵字搜尋 命令grep用以基於關鍵字搜尋文本 $ grep 'shuangde' /etc/passwd$ find / -user shuangde | grep Video -i 在搜尋的時候忽略大小寫-n 顯示結果所在行數-v 輸出不帶關鍵字的行-Ax 在輸出的時候包含結果所在行之後的指定行數 -Bx 在輸出的時候包含結果所在行之前的指定行數 基於列處理文本 命令cut用以基於列處理常值內容$ cut -d : -f 1 /etc/passwd 用冒號分隔並顯示passwd檔案的第一列(如果顯示多列: -f 1,2,3 )$ grep shuangde /etc/passwd | cut -d: -f3 -d 指定分隔字元(預設是TAB)-f 指定輸出的列號-c 基於字元進行分割 $ cut -c2-6 /etc/passwd顯示第2~6個字元 文本統計 命令wc(word count)用以統計文本資訊$ wc file 輸出行數,單詞數,位元組數 -l (lines) : 只統計行數-w (words) : 只統計單詞數-c (bytes):只統計位元組數-m (chars):只統計字元數 文本排序 sort命令:用以對文本的行內容進行排序(只支援英文和數字)$ sort filename -r 倒序排序-n 基於數字進行排序-f 忽略大小寫-u 重複資料刪除行-t c 使用c作為分隔字元分割為列進行排序-k x 當進行基於指定字元分割為列的排序時,指定基於那個列排序 重複資料刪除行 $ sort -u 可以重複資料刪除行$ uniq 用以刪除相鄰的重複行 文本比較diff 命令:一行行地比較兩個文字檔的差異$ diff file1 file2-i 忽略大小寫-b 忽略空格數量的改變-u 統一顯示比較資訊(一般用以產生patch檔案) $ diff -u file1 file2 > final.patch 拼字檢查 aspell 命令: 顯示檢查英文拼字$ aspell check file 檢查檔案file內的單詞拼字,可以進行改正$ aspell list file 把檔案file內錯誤單詞,並顯示出來 處理常值內容 tr 命令 : 改變或者刪除常值內容 刪除關鍵字$ tr -d 'TMD' < filename 把T,M,D三個字母都刪掉 轉換大小寫$ tr 'a-z' 'A-Z' < filename 搜尋替換 sed命令: 用以搜尋並替換文本(stream editor for filtering and transforming text.) $ sed 's/linux/unix/g' file$ sed '1,50s/linux/unix/g' file$ sed -e 's/linux/unix/g' -e 's/hehe/haha/g' file 可以指定多個匹配模式$ sed -f sededit file