gpt4 book ai didi

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

转载 作者:行者123 更新时间:2023-12-03 05:10:08 28 4
gpt4 key购买 nike

我正在使用下面的代码来替换字符串在 shell 脚本中。

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

但它被替换为 $replace 而不是该变量的值。

谁能告诉我出了什么问题吗?

最佳答案

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

尝试:

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

文字记录:

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

请小心确保 ${replace} 没有任何对 sed 有意义的字符(例如 /)因为除非逃脱否则会引起困惑。但如果正如您所说,您将一个数字替换为另一个数字,那应该不成问题。

关于unix - 使用变量替换 shell 脚本中的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3306007/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com