当我运行这个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)
你看到有什么问题吗?
鉴于您尝试检查变量是否为空而不是以下代码中的其他值:
if [ ! -z "$foo" ] && [[ ${foo} != "bar" ]]; then
Run Code Online (Sandbox Code Playgroud)
实现这一目标的最佳实践是什么?我已经看过bash条件语写了几种方式,包括以下内容......
if [[ ! -z "$foo" && ${foo} != "bar" ]]; then
Run Code Online (Sandbox Code Playgroud)
我的理解是有区别的使用单支架和双时,我更关心的是,当把&&或||括号或出里面.