sed:stream editor,流處理器。
每次處理一行的内容,處理時把行的内容存儲到緩沖區(pattern space),接着用sed指令處理緩沖區的内容,處理之後輸出到螢幕,不改變原檔案的内容。
使用格式: sed 'cmd' file
關鍵是單引号括起來的部分,cmd運用的熟練能大大提高效率。
常例: 删/增
eg1: 删除含有字元‘a’的行
➜ shellQa cat data.txt
a 2
b 4
c 6
d 8
➜ shellQa sed '/a/d' data.txt
b 4
c 6
d 8
➜ shellQa cat data.txt 原檔案内容未改變
a 2
b 4
c 6
d 8
eg2: 在每行的行首添加字元 '#'
➜ shellQa cat data.txt
a 2
b 4
c 6
d 8
➜ shellQa sed 's/^/#&/g' data.txt
#a 2
#b 4
#c 6
#d 8
eg3: 在每行的行尾添加字元 '#'
➜ shellQa cat data.txt
a 2
b 4
c 6
d 8
➜ shellQa sed 's/$/&#/g' data.txt
a 2#
b 4#
c 6#
d 8#