Стартовый экран с командой

Мне нужно иметь возможность запускать экран, не подключаясь к нему, но он также должен запустить мой скрипт start.sh, который содержит строку java для запуска Minecraft.

screen -d -m new3 -c start.sh

Это то, что я пытался использовать, но он никогда не запускает start.sh

В фрагменте кода, который я нашел в сети, он, кажется, делает то, что я хочу, но мне нужна помощь

 mc_start() {
    cd $MCPATH
    as_user "cd $MCPATH && screen -dmS $SCREEN $INVOCATION"
    #
    # Waiting for the server to start
    #
    seconds=0
    until ps ax | grep -v grep | grep -v -i SCREEN | grep $SERVICE > /dev/null
    do
        sleep 1 
        seconds=$seconds+1
        if [[ $seconds -eq 5 ]]
        then
            echo "Still not running, waiting a while longer..."
        fi
        if [[ $seconds -ge 120 ]]
        then
            echo "Failed to start, aborting."
            exit 1
        fi
    done    
    echo "$SERVICE is running."
}

1 ответ

Решение

Я думаю, это потому, что ваша команда неверна. Я предполагаю, что вы хотите создать новый сеанс с именем new3 и оторваться от этого

screen -d -m -S new3 ~/start.sh

После этого вы можете выполнить следующую команду, чтобы снова подключиться к вашему сеансу.

screen -R new3
Другие вопросы по тегам