Syntax shell脚本中的语法帮助

Syntax shell脚本中的语法帮助,syntax,Syntax,我是一名shell脚本的新手,正在在线教程网站上学习它。 在一个特定的代码中,我遇到了以下行: [ -z "${starkisland}" ] && { echo "`basename $0`: ERROR: starkisland environment variable not defined !" ; exit 2 ; } 这里我看到[-z“${starkisland}”]是一个if条件,意思是如果文件starkisland的大小为零,并且和&之后

我是一名shell脚本的新手,正在在线教程网站上学习它。 在一个特定的代码中,我遇到了以下行:

[ -z "${starkisland}" ]             && { echo "`basename $0`: ERROR: starkisland environment variable not defined !" ; exit 2 ; }
这里我看到
[-z“${starkisland}”]
是一个
if
条件,意思是如果文件
starkisland
的大小为零,并且
和&
之后的部分类似于条件为
true
时要执行的部分。但是如果我没有错的话,我想
&&
条件的符号。
如果
&&
的条件,有谁能帮助我理解这样写作背后的陈述和逻辑吗?

你应该读一下

if [ CONDITION ] && {ACTION1} || {ACTION2}
作为

事实上,这些不是逻辑运算符,而是流控制运算符

&&表示“退出代码为0时执行”

||表示“退出代码不为0时执行”

您应该阅读此内容

if [ CONDITION ] && {ACTION1} || {ACTION2}
作为

事实上,这些不是逻辑运算符,而是流控制运算符

&&表示“退出代码为0时执行”

||表示“退出代码不为0时执行”