Bash条件执行

时间:2013-10-12 02:36:13

标签: bash

我从网上找到的脚本中获取了这段代码:

[ $# = 0 ] && usage

如果命令行中没有参数,则调用usage方法(打印帮助信息)。

我不明白的是为什么脚本在调用后会退出?它不应该只是继续其他代码吗?

2 个答案:

答案 0 :(得分:2)

除非'usage'执行'exit'命令,否则它将继续执行

答案 1 :(得分:2)

有多种方法可以实现:

  1. usage方法中包含exit命令
  2. usage方法具有return 1命令(或其他非零值),并使用-e标志调用脚本,例如#!/bin/sh -e shebang
  3. usage方法的操作失败,并使用-e标志调用脚本
  4. 现在我还记得有很多方法。

    就个人而言,我总是使用exit 1作为usage方法中的最后一个命令,所以这种行为对我来说似乎很自然。