如果我不想在 if-then 块中做任何事情,而是在它的 else 块中做一些事情怎么办?

AGa*_*yer 0 shell

#intro
if [ -n "$1" ]
    then
        echo 666
    else
        echo 555
fi
exit;
Run Code Online (Sandbox Code Playgroud)

其实我确实想做,echo 555而我不想在第一个块中做任何事情,我该怎么办?我注意到我不能只是删除echo 666.

cuo*_*glm 6

只使用no-op

if [ -n "$1" ]; then
  :
else
  echo 555
fi
exit
Run Code Online (Sandbox Code Playgroud)

或反转逻辑:

if [ -z "$1" ]; then
  echo 555
fi
exit
Run Code Online (Sandbox Code Playgroud)