如何解决如何使用“sed”命令替换字符串的尾部
这是一个这样的路径字符串:
path=/home/test/test.xml
我想改成
path=******
我该怎么办? 我尝试使用“sed”来替换此字符串,但无法按预期工作。
解决方法
如果它只是来自 echo
的字符串,请使用 sed
和正则表达式替换 sed -e 's#PARAM#REPLACEMENT#'
:
echo 'path=/home/test/test.xml' | sed -e 's#path=.*#path=******#'
如果要在文件中替换此字符串,请添加 -i
标志和文件名:
sed -i -e 's#path=.*#path=******#' file.name
仅供参考 在此示例中,#
分隔符仅用于避免与转义 *
字符混淆。
$ echo 'path=/home/test/test.xml'|sed 's@/home/test/test.xml@******@'
path=******
这里的字符 @
是随机选择的,因为它没有出现在字符串的任何地方。
common 分隔符将是 /
,但这需要在路径字符串中进行大量转义。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。