перенаправление вывода в crontab


0

У меня есть сценарий оболочки для мониторинга статистики таблиц и Java-приложений. Он отлично работает, когда я запускаю вручную. Но если я помещу его в crontab, он застрянет, если я не перенаправлю вывод с помощью export displayкоманды. Есть идеи почему?


Вы имеете в виду export DISPLAY? Звучит так, как будто это приложение для X Windows, поэтому для его установки необходимо знать X-сервер. DISPLAYобычно устанавливается при входе в GUI, а cron не в сеансе GUI.
Бармар

Это поможет, если вы разместите полную команду.
Бармар

вот cron работа*/2 * * * * export DISPLAY=:1.0 && gnome-terminal -x /path/script.sh
ivcode

Как вы ожидаете, что gnome-терминал, цель которого - открыть на экране окно эмулятора терминала, будет работать без настройки DISPLAY?
Бармар

хорошо, я открыл дисплей «1» и кажется, cronjob работает. Но проблема в том, что если я добавлю cronjob для того же скрипта, не направляя его на экран (например: * / 2 * * * * /path/script.sh), скрипт застрянет в середине своего выполнения
ivcode

Ответы:


0

Команда должна быть:

DISPLAY=:1.0 gnome-terminal -x /path/script.sh

Поскольку gnome-терминал является X-приложением, оно использует DISPLAYпеременную окружения для подключения к X-серверу и отображения его окон. Чтобы установить переменную среды только на время одной команды, поместите ее в начало командной строки.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.