Sed搜索和替换

时间:2014-07-22 15:53:19

标签: regex search replace sed

我在文件中有一行如下:

LDAP_EXTERNAL_URL=ldap://server.domain.com:389

我需要使用//

替换server2.domain.com:399之后的所有内容

开始让regexp头疼。请指教。

2 个答案:

答案 0 :(得分:1)

也许:

sed -r 's|^(.*ldap://).*|\1server2.domain.com:339|' file

好的,使它更完整:

sed -r 's|^(LDAP_EXTERNAL_URL=ldap://).*|\1server2.domain.com:339|' file

添加-i以启用内联编辑。

答案 1 :(得分:1)

如果您没有严格使用sed,也可以使用以下内容。

perl -pe 's!^LDAP[^/]*//server\K.*!2.domain.com:399!' file