将filename文本里的a改为b,b改为c(前提:一行中有a无b,有b无a)
sed -n '/[ab]/!p;h;s/a/b/p;g;s/b/c/p;' filename
或者
sed -nr '/a|b/!p;h;s/a/b/p;g;s/b/c/p;' filename
若filename的内容cat -A出来结果为:
1$
a$
2$
b$
3$
^Ia$
4$
^Ib$
执行命令后 filename | cat -A 后,结果为
1$
b$
2$
c$
3$
^Ib$
4$
^Ic$
转载于:https://blog.51cto.com/cyent/568960