我想将字符串连接在一起以在 csh 脚本file1.csh 中创建命令字符串。但是,csh 一直在抱怨 commandString 变量的错误,我真的不知道我做错了什么。以下是部分代码。
set var1 = "Hat"
set var2 = 100
set embeddedString = 's/'$var1' =.*$/'$var1' = '$var2'/g'
set commandString = "sed -i ' "$embeddedString" ' productPrice.txt"
echo $commandString
我的目标是将 commandString vairable 设置为
sed -i 's/Hat =.*$ /Hat = 100/g' productPrice.txt
然后,这个 commandString 将被插入到另一个脚本文件 file2.csh 中。file2.csh 是执行 Hat 价格替换命令的实际脚本文件。此外,var1 和 var2 的值是从 priceUpdateList.txt 文件中读取的,因此它们不是固定值。换句话说,我不能简单地在 commandString 变量中键入 Hat 和 100。有谁知道如何正确使用引号在 csh 中生成命令字符串?
非常感谢你,