【发布时间】:2015-09-25 10:33:20
【问题描述】:
我在 bash 脚本中使用 sed 时遇到问题。 这是一行:
sed -i "s/"$name"/"$input"/g" ~/input.script
我收到此错误: sed: -e 表达式 #1, char 24: 未终止的 `s' 命令
奇怪的是,它在我的代码的早期版本中工作。我一直在解决问题,但找不到解决方案。
【问题讨论】:
-
您的变量中可能有一个换行符或斜杠,这让 sed 感到困惑。
-
@EtanReisner 我是个白痴。这最终成为错误。变量中有一个空格。
-
空格只会导致不带引号的变量出现问题。因此,如果您像 Eugeniu Rosca 所说的那样删除它们,那么问题应该已经消失了。换行符和斜杠一样仍然是个问题。