Shell脚本boolean类型的使用注意点

时间:2022-05-12 17:49:47

推荐使用方式

在shell脚本里,推荐按以下方式声明和使用布尔类型。

bool=true
if [ "$bool" = true ]; then
if [ "$bool" = "true" ]; then
if [[ "$bool" = true ]]; then
if [[ "$bool" = "true" ]]; then
if [[ "$bool" == true ]]; then
if [[ "$bool" == "true" ]]; then
if test "$bool" = true; then
if test "$bool" = "true"; then

不推荐使用方式

不推荐直接对变量判断布尔值,如

if $var; then
echo 'true!'
fi

这种方式使用布尔值,在以下这几种情况,$var为true:

  • var未定义
  • var='' 
  • var=
  • unset var
  • var='<有效的命令>'