Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
String 在shell脚本中将一个子字符串替换为另一个字符串_String_Shell_Replace_Sh_Script - Fatal编程技术网

String 在shell脚本中将一个子字符串替换为另一个字符串

String 在shell脚本中将一个子字符串替换为另一个字符串,string,shell,replace,sh,script,String,Shell,Replace,Sh,Script,如果在字符串中包含&并且我正在使用此命令,该怎么办 但它取代了苏西,就像我爱莎拉一样,苏西结婚了 sed-i“s |${firstString}|${secondString}| g”$filename ng=“我爱萨拉和玛丽”temp=$(printf'%s\n'$secondString'| sed-e's/[/&]/\&/g') sed-i“s |$firstString |$temp | g”$filename 使用上面的命令搜索和替换文件中的字符串,这对我很有效。如果它查看和读取的

如果在字符串中包含&并且我正在使用此命令,该怎么办 但它取代了苏西,就像我爱莎拉一样,苏西结婚了

sed-i“s |${firstString}|${secondString}| g”$filename

ng=“我爱萨拉和玛丽”

temp=$(printf'%s\n'$secondString'| sed-e's/[/&]/\&/g')

sed-i“s |$firstString |$temp | g”$filename


使用上面的命令搜索和替换文件中的字符串,这对我很有效。

如果它查看和读取的第二个字符串和结果字符串已经相同,该怎么办。你想把“苏西”放在什么地方吗?不,我想要我的最终结果,比如“我爱萨拉&玛丽”@glennjackmanI因为不够清晰,我投票结束了这个问题
resultString=$secondString
似乎回答了这个问题,但显然不是你想要的。
#!/bin/bash 
filename="test.txt"
firstString="Suzi" 
secondString="I love Sara  & Marry"
 # do something...

#The result must be like this:
resultString=I love Sara  & Marry