У меня есть сценарий оболочки на FreeBSD, который отправляет несколько команд экрана в текущий сеанс экрана (который запускает сервер Minecraft). Команды работают, когда я выполняю их вручную.
Но если я помещаю тот же скрипт в crontab того же пользователя, он выполняется, но команды наполнения экрана не достигают запущенного процесса экрана.
Я проверил / var / log / cron и даже вывод >> d в файл журнала и увидел, что части скрипта, не имеющие ничего общего с командами экрана, действительно выполняются.
Мой сценарий оболочки выглядит так:
screen -S minecraft -X stuff "say Server is going to render the world now.
"
screen -S minecraft -X stuff "say You might feel some slight turbulence.
"
screen -S minecraft -X stuff "save-all
"
screen -S minecraft -X stuff "save-off
"
cd /home/minecraft/bin/mcmap-src
./mcmap /srv/minecraft/cascada
screen -S minecraft -X stuff "save-on
"
Кто-нибудь может мне с этим помочь?
[РЕДАКТИРОВАТЬ]
К сожалению, оказывается, что это не имеет ничего общего с исполняющим пользователем, но все, что связано с использованием пути «/ usr / local / bin / screen» вместо просто «screen».
Исправлена!
От редактирования к вопросу.
Оказывается, это не имеет ничего общего с исполняющим пользователем, но все, что связано с использованием пути «/ usr / local / bin / screen» вместо просто «screen».