首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >sed命令不会替换"\“

sed命令不会替换"\“
EN

Stack Overflow用户
提问于 2014-07-22 19:50:35
回答 2查看 198关注 0票数 0

我使用sed将文件中的内容替换为字符串"dba01upc\Fusion_test“。替换后,我看到缺少'\‘字符。替换后的字符串为dba01upcFusion_test。似乎sed在替换..时忽略了'\‘。有没有人可以告诉我sed命令包含所有字符?

我的Sed命令:

代码语言:javascript
复制
sed -i "s%{"sara_ftp_username"}%"dba01upc\Fusion_test"%g" /home_ldap/user1/placeholder/Sara.xml

更换前: Sara.xml

代码语言:javascript
复制
<?xml version="1.0" encoding="UTF-8"?>
<ser:service-account >
<ser:description/>
<ser:static-account>
<con:username>{sara_ftp_username}</con:username>
</ser:static-account>
</ser:service-account>

更换后: Sara.xml

代码语言:javascript
复制
<?xml version="1.0" encoding="UTF-8"?>
<ser:service-account>
<ser:description/>
<ser:static-account>
<con:username>dba01upcFusion_test</con:username>
</ser:static-account>
</ser:service-account>

谢谢

EN

回答 2

Stack Overflow用户

发布于 2014-07-22 20:10:45

代码语言:javascript
复制
sed -i 's%{sara_ftp_username}%dba01upc[\]Fusion_test%g' /home_ldap/user1/placeholder/Sara.xml
# or
sed -i 's%{sara_ftp_username}%dba01upc\\Fusion_test%g' /home_ldap/user1/placeholder/Sara.xml
# or
sed -i "s%{sara_ftp_username}%dba01upc\\\Fusion_test%g" /home_ldap/user1/placeholder/Sara.xml

转义\ (如果使用双引号,则为两次)

票数 3
EN

Stack Overflow用户

发布于 2014-07-22 19:55:21

试试这个:

代码语言:javascript
复制
sed -i "s%sara_ftp_username%dba01upc\\\Fusion_test%g" /home_ldap/user1/placeholder/Sara.xml
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24886627

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档