stream editor,行編輯器
sed是一種流編輯器,它一次處理一行內容。處理時,把當前的行儲存在臨時緩衝區,稱為「模式空間」(pattern space),接著用sed命令處理緩衝區中的內容,處理完成後,把緩衝區的內容送往螢幕。然後讀入下行,執行下乙個迴圈。如果沒有使諸如「d」的特殊命令,那會在兩個迴圈之間清空模式空間,但不會清空保留空間,這樣不斷重複,直到檔案末尾。檔案內容並沒有改變,除非你使用重定向儲存輸出。
功能格式:sed [option]… {script} inputfile…主要用來自動編輯乙個或多個檔案,簡化對檔案的反覆操作,編寫轉換程式等 ,使用時最好先備份。
選項:
例如:#sed 'p' passwd
root:x:0:0:root:/root:/bin/bash
root:x:0:0:root:/root:/bin/bash
ps:預設sed會列印輸出到螢幕,所以會出現重複2行,加上-n可以不輸出模式空間的內容到螢幕
例如: nl passwd|sed -n '$p'
行號==> 54 2:x:1013:1015::/home/2:/bin/bash
/pattern/:被此處模式(正規表示式)所能匹配的每一行
例如:取磁碟使用率
#df|sed -n '\\/sda\p'
/dev/sda2 52403200 4337284 48065916 9% /
/dev/sda3 31441920 45292 31396628 1% /data
/dev/sda1 1038336 157968 880368 16% /boot
當表示式引用變數是要使用雙引號或三個單引號來喚醒。
例:sed -r 「s/(grub)/\1_id
/」/e
tc/d
efau
lt/g
rub<==雙
引號se
d−r『
s/(g
rub)
/\1′」
i d/
」/et
c/de
faul
t/gr
ub
<==雙引
號sed
−r『s
/(gr
ub)/
\1」
′id」』/』 /etc/default/grub<==三個單引號
6文字處理工具
1 grep命令 i 忽略大小寫 n 顯示結果所在行的行號 c 結果個數 v 反向過濾 r 關鍵字 目錄 在目錄中過濾含有關鍵字的檔案 e 關鍵字1 關鍵字2 過濾多個關鍵字 root localhost cp etc passwd root localhost ls file filegreat ...
011 文字處理工具
cat b acl.txt 刪除空行標註行號 cat n acl.txt 統計所有行 cat ns acl.txt 壓縮空行,跟整體保持一致 cat a acl.txt 顯示所有控制符 tac acl.txt 反向顯示內容 cat顛倒了 rev f2.log 在同一行裡反寫 more anacond...
3 2 文字處理工具
全域性搜尋表示式 命令grep root file 過濾root關鍵字 貪婪模式 grep root file 過濾以root開頭的關鍵字 grep root file 過濾以root結尾的關鍵字 grep i root file 忽略大小寫 grep e root字元之前不能有字元 grep e ...