sed -i s/..../g 特殊字符
sed -i s/..../g 是一个 sed 命令,用于替换文本中的特定字符。
其中的 "...." 是需要被替换的特殊字符的模式。在 Linux 中,特殊字符通常是由转义字符(\)紧跟着特定字符组成的。例如,如果要替换文本中的&字符,命令应该是 sed -i s/&/g。
sed 是一个流编辑器,主要用于在文本中进行查找和替换操作。-i 选项表示直接修改输入文件,而不是将结果打印到终端。
s/..../g 是 sed 命令的替换指令,其中的 s 表示替换操作,/g 表示全局替换,即文本中所有匹配的地方都进行替换。
下面是一个例子来说明这个命令的用法:
假设有一个文本文件 file.txt,内容如下: Hello World This is a test. The characters to be replaced are: .... Another example.
执行命令:sed -i s/..../%/g file.txt
修改后的内容为: Hello World This is a test. The characters to be replaced are: %%%% Another example.
其中,"...." 被替换成了 "%%%%"。注意到 /g 选项确保了所有匹配到的 "...." 都被替换了。
这就是 sed -i s/..../g 特殊字符的含义和用法。
解释一下这行代码sed -i "s/http\:\/\/127\.0\.0\.1\:3000\/resource/\/\/focus-res-dev\.cn\/front-pc/g" `grep http\:\/\/127\.0\.0\.1\:3000\/resource -rl ../res`
这行代码使用了 sed
命令和 grep
命令,作用是将指定目录中所有包含字符串 http://127.0.0.1:3000/resource
的文件中的这个字符串替换成 //focus-res-dev.cn/front-pc
。
具体来说,grep
命令的作用是在 ../res
目录下查找所有包含字符串 http://127.0.0.1:3000/resource
的文件,并将结果作为参数传递给 sed
命令。-r
参数表示递归查找,-l
参数表示只显示文件名而不显示匹配到的行。
sed
命令中的 -i
参数表示直接修改文件,s/old/new/g
表示将字符串 old
替换成字符串 new
,g
表示替换所有匹配到的字符串而不仅仅是第一个。注意到字符串中包含 /
和 :
等特殊字符,所以需要使用 \
对它们进行转义。最终结果是将所有匹配到的文件中的指定字符串替换成了新的字符串。
sed -i 's/http://updates.jenkinsci.org/download/https://mirrors.tuna.tsinghua.edu.cn/jenkins/g' default.json sed: -e expression #1, char 10: unknown option to `s'
根据您提供的命令,出现了错误信息,错误提示为"s"选项未知。
这个错误通常是由于命令中使用了与sed命令语法冲突的字符导致的。请确保您在命令中正确使用了sed命令的语法。
在您提供的命令中,看起来您已经正确使用了替换命令"s/old/new/g",但是错误提示表明在字符"s"之后存在一个未知的选项。
请检查命令中是否有其他字符或特殊字符引起了此错误。确保命令的语法正确,并尝试再次执行。如果问题仍然存在,请提供更详细的命令内容和文件内容,以便我们可以更好地帮助您解决问题。
相关推荐

















