我相信以下两个代码片段在POSIX兼容的shell中都是有效的:
选项1:
if [ "$var" = "dude" ]
then
echo "Dude, your var equals dude."
fi
Run Code Online (Sandbox Code Playgroud)
选项2:
if test "$var" = "dude"
then
echo "Dude, your var equals dude."
fi
Run Code Online (Sandbox Code Playgroud)
首选哪种语法,为什么?在某些情况下,是否有理由使用其中一种?