我试图运行一个代码块,如果一个标志设置为true而另一个标志设置为false.即
var1=true
var2=false
if [[ $var1 && ! $var2 ]]; then var2="something"; fi
Run Code Online (Sandbox Code Playgroud)
由于这没有评估我预期的方式,我写了几个其他的测试用例,我很难理解他们是如何被评估的.
aa=true
bb=false
cc="python"
if [[ "$aa" ]]; then echo "Test0" ; fi
if [[ "$bb" ]]; then echo "Test0.1" ; fi
if [[ !"$aa" ]]; then echo "Test0.2" ; fi
if [[ ! "$aa" ]]; then echo "Test0.3" ; fi
if [[ "$aa" && ! "$bb" ]]; then echo "Test1" ; fi
if [[ "$aa" && ! "$aa" ]]; then echo "Test2" ; fi
if [[ …Run Code Online (Sandbox Code Playgroud) 当我运行这个bash脚本时:
if [ [$EUID -ne 0] ]; then
echo "This script must be run as root" 1>&2
exit 1
else
printf " whathever "
exit 0
fi
Run Code Online (Sandbox Code Playgroud)
我有这个错误:
./myScript: 15: [: Illegal number: [
Run Code Online (Sandbox Code Playgroud)
你看到有什么问题吗?