Da edição à pergunta.
Acontece que não tem nada a ver com o usuário em execução, mas tudo com ter que usar o caminho "/ usr / local / bin / screen" em vez de apenas "screen".
Eu tenho um script de shell no FreeBSD que envia alguns comandos de tela para uma sessão de tela em execução (que executa um servidor Minecraft). Os comandos funcionam quando eu o executo manualmente.
Mas se eu colocar o mesmo script no crontab do mesmo usuário, ele será executado, mas os comandos de material da tela não alcançarão o processo da tela de execução.
Eu verifiquei / var / log / cron e até mesmo > > imprimi em um arquivo de log e vi que as partes do script que não têm nada a ver com os comandos de tela realmente são executadas.
Meu script de shell é assim:
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
"
Alguém pode me ajudar com isso?
[EDITAR]
Oops acontece que não tem nada a ver com o usuário em execução, mas tudo com ter que usar o caminho "/ usr / local / bin / screen" em vez de apenas "screen".
Fixo!
Da edição à pergunta.
Acontece que não tem nada a ver com o usuário em execução, mas tudo com ter que usar o caminho "/ usr / local / bin / screen" em vez de apenas "screen".
Tags cron gnu-screen freebsd