1

本でこの小さなシェルスクリプトを見つけました...NGiNXはこのスクリプトだけで動作しますが、動作しません。/etc/init.d/nginx start (ファイルがある場所) を実行するたびに、次のメッセージが送信されるため: Usage: /etc/init.d/nginx {start|stop|restart|reload}

テスト目的で、エコー "$1" を追加しました。実行すると -e が送信されます: /etc/init.d/nginx start またはその他...

Ubuntu 12.04 を使用しています。

#! /bin/sh
# Author: Ryan Norbauer http://norbauerinc.com
# Modified: Geoffrey Grosenbach http://topfunky.com
# Modified: Clement NEDELCU
# Reproduced with express authorization from its contributors
set –e
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DESC="nginx daemon"
NAME=nginx
DAEMON=/usr/local/nginx/sbin/$NAME
SCRIPTNAME=/etc/init.d/$NAME
# If the daemon file is not found, terminate the script.
test -x $DAEMON || exit 0
echo "0"
d_start() {
$DAEMON || echo -n " already running"
}

d_stop() {
$DAEMON –s quit || echo -n " not running"
}

d_reload() {
$DAEMON –s reload || echo -n " could not reload"
}
echo "$1"
case "$1" in
    start)
            echo -n "Starting $DESC: $NAME"
            d_start
            echo "."
    ;;
    stop)
            echo -n "Stopping $DESC: $NAME"
            d_stop
            echo "."
    ;;
    reload)
            echo -n "Reloading $DESC configuration..."
            d_reload
            echo "reloaded."
    ;;
    restart)
            echo -n "Restarting $DESC: $NAME"
            d_stop
            # Sleep for two seconds before starting again, this should give the
            # Nginx daemon some time to perform a graceful stop.
            sleep 2
            d_start
            echo "."
            ;;
    *)
            echo "Usage: $SCRIPTNAME {start|stop|restart|reload}" >&2
            exit 3
    ;;
esac

exit 0
4

1 に答える 1

1
于 2012-08-18T15:25:43.397 に答える