仅出于好奇:
A="echo hi"
B="echo hello"
C="$A && $B"
echo $C // prints "echo hi && echo hello"
$C
echo "$A && $B" // prints "echo hi && echo hello"
$A && $B
我本以为这会以相同的方式工作。但是它展示了不同的结果:
echo hi && echo hello
hi && echo hello
echo hi && echo hello
hi
hello
为什么?
eval
强制执行完整的解析步骤,但这会引起自己的问题(请参见[BashFAQ#48](http://mywiki.wooledge.org/BashFAQ/048))。 - Charles Duffy