为了账号安全,请及时绑定邮箱和手机立即绑定

使用变量替换shell脚本中的字符串

使用变量替换shell脚本中的字符串

手掌心 2019-06-29 10:13:46
使用变量替换shell脚本中的字符串我使用下面的代码替换shell脚本中的字符串。echo $LINE | sed -e 's/12345678/"$replace"/g'但它正被替换成$replace而不是那个变量的值。有人知道出了什么问题吗?
查看完整描述

3 回答

?
Helenr

TA贡献1780条经验 获得超4个赞

如果你想解释$replace,您不应该使用单引号,因为它们阻止变量替换。

试着:

echo $LINE | sed -e "s/12345678/\"${replace}\"/g"

假设你想把引号放进去。如果你要使用引号,请使用:

echo $LINE | sed -e "s/12345678/${replace}/g"

谈话全文:

pax> export replace=987654321pax> echo X123456789X | sed "s/123456789/${replace}/"X987654321X
pax> _

只是要小心确保${replace}没有任何有意义的特征sed(比如/因为除非逃脱,否则会造成混乱。但是,就像你说的那样,如果你用另一个数字代替一个数字,那就没有问题了。


查看完整回答
反对 回复 2019-06-29
  • 3 回答
  • 0 关注
  • 2065 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信