Я использую текстовый редактор geany, в котором есть опция командной строки для вывода списка всех открытых документов. Следующая команда прекрасно работает при запуске из командной строки:
/usr/bin/geany --list-documents > /home/myname/geanylist.txt
Я хочу регулярно запускать это в cron, но она не работает. Я попытался:
Что бы я ни делал, когда запускается crontab, ~ / geanylist.txt не будет содержать вывод из geany --list-documents
, хотя он будет содержать любой другой вывод, сгенерированный скриптом. Я в растерянности. Как я могу сделать эту работу? Есть ли другая системная утилита, кроме cron, которую я могу использовать, которая позволит мне сделать это?
Лучшее решение, которое я могу придумать, - это создать скрипт с циклом, который запускает команду и затем спит в течение 24 часов - наверняка есть лучший способ?
edit:
/usr/bin/geany --list-documents
при запуске из CL является список полных путей к файлам (обычно ascii txt), по одному в строке на stdout. crontab -e
, для $EDITOR
установлено значение nano
. Таким же образом я добавил много других команд в свой crontab, все они работают правильно (ни одна из этих других команд не пытается запустить geany
каким-либо образом). Дикая догадка: у бегущего из cron нет доступа к вашему DISPLAY; попробуйте добавить DISPLAY=:0
Решение найдено здесь: https://sourceforge.net/p/geany/bugs/999/
* * * * * /usr/bin/geany --display=:0.0 --list-documents > /home/myname/geany_files.txt