Как настроить задание cron для запуска исполняемого файла каждый час?

Мне нужно настроить задание cron, которое запускает исполняемый файл, скомпилированный с использованием gcc один раз в час.

Я вошел в систему как root и набрал crontab -e

Затем я ввел следующее и сохранил файл.

0 * * * *  /path_to_executable

Однако задание cron не работает.

Я вижу, что когда я набираю / ... path_to_executable , я получаю ошибку сегментации. Я могу выполнить исполняемый файл только из папки, в которой он находится. Есть ли способ решить эту проблему?

84
задан Philipp 20 August 2010 в 19:55
поделиться

5 ответов

0 * * * * cd folder_containing_exe && ./exe_name

должен работать, если нет чего-то еще, что нужно настроить для запуска программы.

143
ответ дан 24 November 2019 в 08:34
поделиться

Поскольку я не мог запустить исполняемый файл C таким образом, я написал простой сценарий оболочки , который выполняет следующие действия

cd /..path_to_shell_script
./c_executable_name

В список заданий cron, я вызываю сценарий оболочки.

0
ответ дан 24 November 2019 в 08:34
поделиться

Вы имели в виду, что исполняемый файл не запускается, если его вызвать из любого другого каталога? Это скорее ошибка исполняемого файла. Одной из возможных причин может быть то, что исполняемый файл требует некоторые общие библиотеки из установленной папки. Вы можете проверить переменную окружения LD_LIBRARY_PATH

2
ответ дан 24 November 2019 в 08:34
поделиться

используйте

path_to_exe >> log_file

чтобы увидеть вывод вашей команды также ошибки могут быть перенаправлены с помощью

path_to_exe &> log_file

также вы можете использовать

crontab -l

чтобы проверить, были ли сохранены ваши правки.

0
ответ дан 24 November 2019 в 08:34
поделиться

Решение этой проблемы - выяснить, почему возникает ошибка сегментации, и исправить ее.

8
ответ дан 24 November 2019 в 08:34
поделиться
Другие вопросы по тегам:

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