Добрый день. Почему скрипт bash не работает через cron?
for session in $(screen -ls | grep -oP '\d+\.\w+' | cut -d. -f1); do screen -S "${session}" -X quit; done
cd /root/bot
screen -dmS bot poetry run python src bot
Суть такая, чтобы каждый час завершать все screen окна, и создавать новое окна и запускать там команду "poetry run python src bot". Если запустить скрипт просто через консоль командой:
cd /root/bot;sh restart.sh
То все работает, все окна screen закрываются, создается новое окно и в нем запускается команда, но если скрипт запускается через cron:
*/5 * * * * cd /root/bot;sh restart.sh > /dev/null
То окна закрываются, но новое окно не запускается и выводит ошибку: Must be connected to a terminal.