Linux扩展篇-shell编程(五)-流程控制(一)-if语句

发布时间 2023-06-27 10:09:11作者: cavan丶keke

基本语法:

(1)单分支

if [ condition ];then
    # if body
fi

或

if [ condition ]
then
    # if body
fi

(2)多分支

if [ condition ]; then
    # if body
elif [ condition ]; then
    # else if body
else
    # else body
fi

注意事项:

  • if 开始 fi 结尾,当then和if在同一行的时候需要使用“;”分号;不在同一行时,可直接输入。
  • 在 '[' 后面和 ']' 前面都必须要有空格
  • 对于变量的处理,需要加引号,以避免不必要的错误。没有加双引号会在一些含空格等的字符串变量判断的时候产生错误。比如[ -n "$var" ],如果var为空会出错。
  • 不支持浮点数的判断
  • 未定义的变量,在使用-z或者-n来检查长度时,值也为0
  • 空变量未初始化的变量,在执行shell脚本时会出现意外报错,在使用前用-n或者-z进行判断。
  • $? 上一条命令执行的退出状态,可以用来作为判断。