sed用來將文本中的數據進行選取、替換、刪除、新增的命令。
格式:sed [選項] '[動作]' 文件名
選項:
-n:一般sed命令會把所有數據輸出到屏幕上。加入此選項,則只會把經過sed處理的數據輸出到屏幕。
-e:允許應用多條sed命令編輯。
-i:將信息寫入到sed處理的文件中,而不是由屏幕輸出。
a \追加行,在當前行後添加一行或多行內容。添加多行時,除最後一行外,每行末尾需要用“\”代表數據完結。
c 行替換,用c後面的字符串替換原數據行。
i 插入行,在當前行前插入一行或多行內容。
#a c i前不加行號會對每一行都生效!!!!
d:刪除,刪除指定的行
p:打印,打印輸出指定的行
s:字符替換,用一個字符串替換另一個字符串。格式爲'行範圍s/舊字符/新字符/g'(和vim類似)
實例:
# sed -n '2p' students.txt 將第二行內容打印輸出到屏幕上
# sed '2,4d' students.txt 刪除第二至四行內容
# sed -i 's/#id:/id:192.168.1.1/g'/etc/salt/minion 將salt-minion的id取消註釋並改爲192.168.1.1,並將修改寫入文件中
# sed -e '/^#/d;/^$/d'/etc/salt/master 查看master文件中未被註釋的內容
# sed -i '3a qwe' 1.txt 向1.txt文件中的第三行後添加一行內容