Linux screen tool - запустить команду в сеансе, созданном в cron

В crontab (редактируется с помощью команды crontab -e на me пользователь), я написал:

@reboot /usr/bin/screen -mdS test
*/6 * * * * /home/me/RunDFB.sh

я использую RunDFB.sh чтобы проверить, мое консольное приложение (которое работает в screen session) работает правильно - если это не так, скрипт убивает мое приложение и запускает его снова, выполнив следующую команду:

/usr/bin/screen -S test -X stuff "$SCREEN_CMD"`echo -ne '\015'`

Когда crontab создает сессию (напр. @reboot /usr/bin/screen -mdS test), скрипт не может запустить команду из $SCREEN_CMD переменная (без ошибок. Это просто не выполняется), но когда я создаю сессию самостоятельно (таким же образом, как crontab - /usr/bin/screen -mdS test), скрипт запускает мой $SCREEN_CMD в screen сессия без проблем.

Что я делаю неправильно?

,

PS я пытался даже совместить это два screen команды (/usr/bin/screen -m -d -S test -X stuff "$SCREEN_CMD"echo -ne '\ 015'``), но затем (независимо от того, ввожу ли я команду самостоятельно или она выполняется crontab), я получаю сообщение об ошибке:

Сеанс экрана не найден.

,

@edit: вот содержание моего $SCREEN_CMD переменная

SCREEN_CMD="dotnet run --project /home/pi/DFB/DFB.csproj"

0 ответов

Другие вопросы по тегам