【发布时间】:2013-09-28 01:41:36
【问题描述】:
我想让脚本自我守护,即不需要在shell提示符下手动调用nohup $SCRIPT &>/dev/null &。
我的计划是创建一段代码,如下所示:
#!/bin/bash
SCRIPTNAME="$0"
...
# Preps are done above
if [[ "$1" != "--daemonize" ]]; then
nohup "$SCRIPTNAME" --daemonize "${PARAMS[@]}" &>/dev/null &
exit $?
fi
# Rest of the code are the actual procedures of the daemon
这是明智的吗?你有更好的选择吗?
【问题讨论】:
-
您至少应该在
$SCRIPTNAME和$1周围使用双引号;否则,如果这些值中有空格,您会遇到麻烦。 -
@Alfe 你是对的。我忘记了双引号。感谢您指出这一点!