Неправильное поведение сценария при использовании "at" по расписанию

Я был бы признателен за совет о том, почему сценарий работает нормально, когда сценарий запускается из командной строки терминала, но некоторые команды в сценарии, по-видимому, не запускаются, когда сценарий запланирован с помощью команды "at" (и совет о том, как заставить его работать правильно по расписанию). Скрипт (названный «open_browser.sh») предназначен для открытия браузера в запланированное время следующим образом:

#!bin/bash
#script filename: "~/Desktop/open_browser.sh"

#write to log file to verify script is running
echo "Starting open_browser.sh"

#set URL for browser
STRING = "https://news.google.com/"

#open browser - try with Firefox and Chromium
#firefox $STRING
chromium-browser $STRING

#write to log file to verify script finishes
echo "Ending open_browser.sh"

#end of script

Когда я запускаю скрипт из командной строки терминала, используя «./~/Desktop/open_browser.sh> log_file» , сценарий открывает выбранный браузер в видимом (переднем) окне и записывает операторы эха в файл журнала. Когда я планирую сценарий с помощью команды «at», он открывает файл журнала и записывает все эхо-сообщения, но не открывает никаких видимых окон браузера. Я запланировал сценарий, используя "at" следующим образом:

$ at now + 1 min 

at> ./~/Desktop/open_browser.sh > log_file

Я был бы благодарен за любое понимание того, почему сценарий открывает браузер при выполнении из командной строки, но, по-видимому, не при запланированном использовании команды "at".

Для получения дополнительной информации, в моей установке по умолчанию используется файл запрета "at" ( /etc/at.deny ). Я не видел ни одного файла at.allow.

Заранее спасибо.

0
задан 19 February 2020 в 13:07

1 ответ

Ответ Джоса был правильным решением. "Ваша команда chromium-browser работает в оболочке, но требует графического отображения. Вы не указываете один, тогда как у вас может быть много. Отображение по умолчанию называется: 0. Вам также необходимо указать полный путь к каждому исполняемому файлу. Попробуйте заменив команду на DISPLAY =: 0 / usr / bin / chromium-browser $ string. "

0
ответ дан 20 February 2020 в 01:47

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

Похожие вопросы: