为什么不起作用?
newAns=$(${answer} | sed 's/\[//')
我正在尝试编辑$ answer变量以取出'['并将其保存到新变量。
当前给我一个错误,提示“ [foo]:找不到命令”
$ answer = [foo] 回声$ newAns = foo]
答案 0 :(得分:3)
$( ... )
运行命令。
${answer} | sed
是运行命令${answer}
并将其输出传递到sed
中的管道。
sed
是有效的命令,但您的$answer
不是(只是一个字符串)。
最简单的解决方案是根本不使用管道或外部命令:
newAns="${answer#\[}"
将删除前导[
。