假设文件t1.txt内容为
aaa
aaa/
bbb
ccc
aaa
aaa/
ddd
替换并输出:
sed -n 's/aaa/xxx/p' t1.txt
读取test.txt并输出控制台,其中替换所有aaa为bbb.
rasak@rasak-lee:~/桌面$ sed -n 's/aaa/xxx/p' t1.txt
xxx
xxx/
xxx
xxx/
其中-n代表只输出模式匹配的行,s代表替换,p代表把匹配的行输出。 对比验证参数作用:
rasak@rasak-lee:~/桌面$ sed 's/aaa/xxx/p' t1.txt
xxx
xxx
xxx/
xxx/
bbb
ccc
xxx
xxx
xxx/
xxx/
ddd
rasak@rasak-lee:~/桌面$ sed -n '/aaa/xxx/p' t1.txt
sed: -e 表达式 #1, 字符 7: 命令后含有多余的字符↵
rasak@rasak-lee:~/桌面$ sed -n 's/aaa/xxx/' t1.txt
rasak@rasak-lee:~/桌面$
替换文件:
sed -i 's/aaa/xxx/' t1.txt
把t1.txt中的aaa替换为bbb.
xxx
xxx/
bbb
ccc
xxx
xxx/
ddd
其中-i意思是直接操作文件,s表示替换。