Bash脚本理解

Nic*_*ick -1 bash shell

我试图弄清楚下面提到的bash代码究竟是什么,特别是[-z $M ]部分.这里M是一个带值的变量

if [ -z $M ] ; then
    can not find module directory
    exit 1
Run Code Online (Sandbox Code Playgroud)

Ken*_*ent 7

  1. man test Enter
  2. /-zEnter

你看:

-z STRING
              the length of STRING is zero
Run Code Online (Sandbox Code Playgroud)

所以你的脚本会这样做,如果$M长度== 0,那么退出状态代码1

  • 这是我见过的最流行的RTFM方式:D (3认同)
  • @IMSoP你读过`man test`吗?不要给它太多时间,只需阅读前10行,`[EXPRESSION]`清楚地写在那里.他不知道,这就是他来问问的原因.我们发布回答,让他知道. (2认同)