繁体   English   中英

使用 SED 命令替换字符串值

[英]Replace string value using SED command

我的命令是

sh abc.sh 'hello'
  

在我的 shell 脚本abc.sh

var1=$1
sed -i "s/'/ /g" $var1 

sed不工作

sed 在参数中等待文件名(参见man sed

sed [OPTION] .... {script-only-if-no-other-script} [input-file]

在您的脚本中,您需要更改为:

echo "$var1" | sed "s/'/ /g"

您正在对变量而不是文件执行 sed ,因此将变量重定向回 sed 以获得所需的结果:

sed "s/'//g" <<< "$var1"

这避免了与 echo "$var1" | 相关的低效率。 sed.....

在此用例中,sed 的替代方法是 tr ,因此:

tr -d "'" <<< "$var1"

使用 -d "'" 传递要从文本中删除的字符。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM