“如果”在Unix脚本中构造

时间:2013-12-15 08:30:06

标签: shell unix

我刚开始编写shell脚本。在if构造中,if被认为是命令还是关键字?

如果是命令,则在通过which命令搜索时应列出其路径。实际上,which找不到任何内容。

如果if不是命令,那么理想情况下,当then写在同一行时,不需要用分号分隔。

您是否可以解释if是命令还是声明?

3 个答案:

答案 0 :(得分:1)

bash if中是一个复合命令(请参阅链接页面中的“Shell Grammar”。)

答案 1 :(得分:0)

if不是命令它是shell的构造。

条件之后的分号;是用于终止条件的shell语法,仅当then关键字位于同一行时才需要。当;关键字显示在下一行时,then不是必需的。

所以这也可以在没有分号和打印日期的情况下使用:

if ((RANDOM>0))
then
    date
fi

答案 2 :(得分:0)

if是一个关键字。分号终止ifthen之间的命令。