Linux命令列文本處理工具 Linux命令列文本處理工具基於關鍵字搜尋命令grep用以基於關鍵字搜尋文本 命令格式grep "關鍵字",並且通常和管道一起使用,如ls -l | grep "test". 以下是常用的參數 -i 在搜尋的時候忽略大小寫-n 顯示結果所在的行-v 輸出不帶關鍵字的行-Ax 在輸出的時候包含結果所在行之後(after)的指定行數-Bx 在輸出的時候包含結果所在行之前(before)的指定行數基於列處理文本命令cut用以基於列常值內容 使用樣本:cut -d: -f1 /etc/passwd,即用':'當成分割符,輸出第一列,分割的是/etc/passwd檔案, 以下是常用的參數 -d 指定分割字元(預設是TAB)-f 指定輸出的列號-c 基於字作進行切割, 如cut -c2-6 /etc/passwd即輸出/etc/passwd的每一行的第2到第6個字元文本統計命令wc用勁統計文本資訊 使用樣本:比如wc ok.cpp,以下是顯示的結果和解釋 9 23 96 ok.cpp行數,共9行 單詞數,共23個單詞 位元組數,共96個位元組 檔案名稱,叫ok.cpp以下是常用參數 -l 只統計行數-w 只統計單詞數-c 只統計位元組數-m 只統計字元數文本排序命令sort用以對常值內容進行排序 使用樣本: 如sort file -r 進行倒序排序-n 基於數字進行排序-f 忽略大小寫-u 重複資料刪除行-t c 使用c作為分隔字元為列進行排序-k x 指定用哪個key進行排序,通常用於, 進行基於指定字元分割為列的排序時,指定基於那個列排序重複資料刪除行命令sort -u 可以用以重複資料刪除行命令uniq用以重複資料刪除的相鄰行文本比較命令diff用以比較兩個檔案的區別 以下是常用的參數 -i 忽略大小寫-b 忽略空格數量的改變-u 統一顯示比較的資訊(一般用以產生patch檔案)檢查拼字命令aspell用以顯示檢查英文拼字 處理常值內容命令tr用以處理常值內容 刪除關鍵字 tr -d "TMD" <file 轉換大小寫 tr 'a-z' 'A-Z' file 搜尋替換命令sed用以搜尋並替換檔案,這裡有一個很好的教程, 以下列出一些常見的用法 sed 's/old/new/g' file 把file裡單詞old替換為new,如果同一行出現多個old,把每個old都改為new sed '1,50s/old/new/g' file 把1到50行裡每行出現的old改成new, 如果同一行出現多個old,把每個old都改為new sed -e 's/old1/new1/g' -e's/old2/new2/g' file 執行's/old1/new1/g' 和 's/old2/new2/g' 兩個命令 sed -f sedsrcipt file 對file執行sedscipt指令碼中的命令