如何强制异常终止bash脚本


3

我有一台运行DSM的Synology NAS。我创建了一个bash脚本来检查某个文件夹中是否存在某个文件。该脚本按计划运行,并通过电子邮件将结果返回给我。

问题是我收到太多电子邮件只是说脚本运行正常。

DSM任务计划程序仅在脚本异常终止时才允许发送电子邮件。

我的问题是:如何强制脚本异常终止?

如果我正在寻找的文件不存在,我会这样做才能收到电子邮件。

Answers:


4

您可以使用exit 1终止脚本。

退出代码0意味着一切都很顺利,所有其他代表一些错误。


2

如果文件丢失,您可以使用退出代码:

#!/bin/bash
file="/foo/bar"
if [ -e "$file" ]
then
exit 0
else
exit 1
fi

[ -e ]是一个检查是否"$file"存在的运算符。它相当于test -e $fileif-else-fi。如果您需要更多操作员,
请参阅man test

编辑:
为了进一步详细说明,还有其他退出代码,您可以使用这些代码以方便使用,假设您在脚本“爆炸”或由于某种原因未执行时有不同的电子邮件警告。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.