您的位置:首页 > 其它

sed命令详解

2016-08-19 10:34 148 查看
1.替换字符串

-bash-3.2# echo "abcdefghi" | sed 's/cde/aaa/g'
abaaafghi
以上代码将abcdefghi字符串中出现的cde替换为aaa

s为替换的意思,s后紧跟的为分隔符,我们同样可以这样写

-bash-3.2# echo "abcdefghi" | sed 's|cde|aaa|g'
abaaafghi
2.替换不匹配的行

-bash-3.2# echo "abcdefghi" | sed '/fgh/!s/cde/aaa/g'
abcdefghi
上句意为,将不包含fgh的行中的cde字符串替换为aaa

由于abcdefghi中包含fgh,因此没有进行替换。

3.替换文件中的内容

将网卡文件中的static修改为dhcp

-bash-3.2# sed -i 's|BOOTPROTO=static|BOOTPROTO=dhcp|g' /etc/sysconfig/network-scripts/ifcfg-eth0

替换后的结果为

-bash-3.2# cat /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=dhcp
IPADDR=10.180.142.54
NETMASK=255.255.0.0
ONBOOT=yes
HWADDR=00:0C:29:0C:4A:38
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: