如何在linux命令中替换多个文件中的字符串
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在linux命令中替换多个文件中的字符串相关的知识,希望对你有一定的参考价值。
我需要替换文件夹中许多文件中的字符串,只需要ssh访问服务器。我怎样才能做到这一点?
例如,我想要替换包含代码的所有文件
<script src='http://cdn.adplxmd.com/adplexmedia/tags/xbanner/xbanner.js?ap=1300' type='text/javascript'></script>
我想用我的名字替换它:sultan
我做这样的事情:
sed -i 's/<script src='http://cdn.adplxmd.com/adplexmedia/tags/xbanner/xbanner.js?ap=1300' type='text/javascript'></script>/sultan/g' *
但问题是我在linux命令中看到错误信息:
sed: -e expression #1, char 20: unknown option to `s'
我该如何解决这个问题?
答案
有两个错误:
- 斜杠在您调用sed时用作分隔符,因此需要解决这种歧义
- 您在搜索词中使用单引号,但也包含sed参数。
您可以尝试这样的事情:
sed -i "s|<script src='http://cdn.adplxmd.com/adplexmedia/tags/xbanner/xbanner.js?ap=1300' type='text/javascript'></script>|sultan|g" *
以上是关于如何在linux命令中替换多个文件中的字符串的主要内容,如果未能解决你的问题,请参考以下文章