这真的让我很困惑。当我尝试使用此处文档进行多行注释时,以下代码给了我错误“expr:语法错误”
<<EOF
echo "Sum is: `expr $1 + $2`"
EOF
即使我使用“#”明确注释掉包含 expr 的行,错误消息仍然存在
<<EOF
#echo "Sum is: `expr $1 + $2`"
EOF
我观察到只有当我将第二个操作数作为变量提供给 expr 时才会发生这种情况。如果我将其硬编码为数值,则错误消息将消失,即
<<EOF
echo "Sum is: `expr $1 + 2`" # expr's second argument numeric value is hard coded, no error now
EOF
有人可以启发我吗?