Bash函数返回值
函数返回值
函数的返回值是一个数字, 范围是[0 - 255],每一个函数都有返回值,或者:
- 由显式的return语句指定,后面跟一个[0-255]之间的数字。
- 如果没有return语句,那么最后一条语句的返回值作为函数的返回值。
脚本的返回值
脚本的返回值和函数的返回值一样。脚本的返回值也是一个数字,范围是[0 - 255],或者:
- 由显式的exit语句指定,后面跟一个[0-255]之间的数字。
- 如果没有exit语句,那么最后一条命令的返回值作为脚本的返回值。
判断函数是否执行成功
有些时候我们需要判断一个函数是否成功,来决定走不同的分支。
- snippet.bash
if funcall; then ... else ... fi
只要理解一点,判断函数是否执行成功的依据是函数返回值是否为零,是零表示成功,非零表示失败。看下面例子:
- snippet.bash
#!/bin/bash function isOK1() { return 0 } function isOK2() { return 100 } if isOK1; then echo "isOK1 return true" else echo "isOK1 return false" fi if isOK2; then echo "isOK2 return true" else echo "isOK2 return false" fi
运行结果如下:
- snippet.kotlin
$ ./test.sh isOK1 return true isOK2 return false
参考
打赏作者以资鼓励: