And*_*ili 8 linux bash ubuntu if-statement ubuntu-12.04
在这个脚本中我找到了这个if表达式:
if [ -z $1 ]; then
echo "Usage: createpkg.sh <rev package>"
exit
else
CURRENT_VERSION=$1
fi
Run Code Online (Sandbox Code Playgroud)
我的问题是我无法找到这个-z值的确切含义.
从echo的内容我可以$1推断出(可能)变量代表sotware版本.那(也许)-z是一个无效值.因此,如果我执行脚本而不传递给它,我将打包它的软件版本打印我执行脚本的正确程序.
但我不确定-z价值的真正含义.
fed*_*qui 18
来自man test:
-z STRING
the length of STRING is zero
Run Code Online (Sandbox Code Playgroud)
所以条件:
if [ -z $1 ]; then
Run Code Online (Sandbox Code Playgroud)
表示"如果变量$ 1为空".哪里$1可能是脚本的第一个参数:如果你执行它./script <parameter1> <parameter2>,那么$1=parameter1,$2=parameter2等等.
help test 告诉:
String operators:
-z STRING True if string is empty.
Run Code Online (Sandbox Code Playgroud)
在您的示例中,Usage: createpkg.sh <rev package>如果未提供参数,脚本将打印并退出。
| 归档时间: |
|
| 查看次数: |
13269 次 |
| 最近记录: |