У меня есть этот скрипт для файла show.sh
#!/bin/sh
zenity --warning --text "here"
в crontab У меня есть эта строка
* * * * * /home/user/Public/show.sh
, затем я перезапустил свой crontab
user@user-170:~/Public$ sudo /etc/init.d/cron restart
Rather than invoking init scripts through /etc/init.d, use the service(8)
utility, e.g. service cron restart
Since the script you are attempting to invoke has been converted to an
Upstart job, you may also use the stop(8) and then start(8) utilities,
e.g. stop cron ; start cron. The restart(8) utility is also available.
cron stop/waiting
cron start/running, process 5672
user@user-170:~/Public$
но я жду, и ничего не происходит, и когда я открываю программу Schedule Task и запускаю скрипт оттуда, появляется всплывающее окно.
Почему это не работа crontab?
Две ошибки
должно быть "="
--text="here"
и добавление --display=:0.0
для отображения вывода
/usr/bin/zenity --warning --text="here" --display=:0.0
, и теперь он работает как прелесть!
Вы неправильно установили cron, дайте запись в cron, как это
*/1 * * * * /bin/sh /home/user/Public/show.sh
, и скрипт будет выполняться каждую минуту.
Также убедитесь, что у сценария есть разрешение на выполнение, используя команду
chmod +x /home/user/Public/show.sh