1

出色地。

大家好。

我想在 Ubuntu Server 10.04 LTS PC 中作为服务执行一些脚本时遇到问题。这是脚本:

#! /bin/sh

JBOSS_BIN=/usr/local/jboss/bin
JBOSS_START_SCRIPT=$JBOSS_BIN/run.sh 
JBOSS_STOP_SCRIPT=/usr/local/jboss/bin/shutdown.sh
JBOSS_BIND_ADDR=${JBOSS_HOST:-"-b 0.0.0.0"}

ECHO=/bin/echo
TEST=/usr/bin/test

$TEST -x $JBOSS_START_SCRIPT || exit 0
$TEST -x $JBOSS_STOP_SCRIPT || exit 0

start(){
    $ECHO "Starting JBoss"
    su - jboss -c $JBOSS_START_SCRIPT $JBOSS_BIND_ADDR "> /dev/null &"
    $ECHO "."
}

stop(){
    $ECHO "Stopping JBoss"
    su - jboss -c $JBOSS_STOP_SCRIPT -S
    $ECHO "."
}

case "$1" in
    start)
        start
        ;;
    stop)
        stop
        ;;
    restart)
        stop
        sleep 30
        start
        ;;
    *)
        $ECHO "Usage: jboss (start|stop|restart)"
        exit 1
        ;;
esac

exit 0

好吧,那个脚本不起作用,因为我不知道如何正确执行 "> /dev/null &" 。看,如果我在 gnome-terminal 中手动执行命令,它可以工作,但是当我在脚本中编写并执行它时,它会失败。所以我不知道哪里出了问题。也许一些错误的语法?请帮助我;我真的坚持这一点。

4

1 回答 1

1

Leave off the quotes that you have around > /dev/null &

su - jboss -c $JBOSS_START_SCRIPT $JBOSS_BIND_ADDR > /dev/null &
于 2010-12-18T03:51:16.047 回答