好吧,我知道这是一个简单的问题,但我似乎无法让这个 sed 命令工作。我正在尝试获取一个文本文件并将其中的一部分从占位符文本替换为学习代码。当脚本首次运行时,它将用来替换它的研究代码使用参数传递到脚本中。问题是,当我尝试用变量 $study 替换占位符文本时,它会用字面上的“$study”替换它。
现在我的论点是这样的:
export study=$1
export tag=$2
export mode=$3
export select=$4
我的 sed 命令如下所示:
sed -i.backup -e 's/thisisthestudycodereplacethiswiththestudycode/$study/' freq.spx
是否有一些简单的方法让 sed 不查看字面的 $study,或者在这一点上以另一种方式做会更好吗?
最佳答案
使用双引号代替单引号。
因为 '
引用可以防止 shell 变量扩展,而 "
引用不会。
关于linux - 获取 sed 以用参数替换文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/854186/