У меня есть индексатор для sphinx, и я хочу, чтобы он запускался раз в час в Linux. Как бы я это сделал?
9 ответов
Поскольку все остальные публикуют короткие ответы, я подумал, что буду немного более информативным ...
cron
- это демон, встречающийся в большинстве систем * nix, который запускает запланированные команды с заданными интервалами.
Вы добавляете скрипт в список, копируя его в папку по вашему выбору:
- cron.daily
- cron.hourly
- cron.monthly
- cron.weekly
Эти папки обычно находятся в /etc
хрон.
Используйте crontab.
Просто чтобы быть другим -
в зависимости от ваших потребностей вы можете использовать команду watch.
watch --interval=3600 command
Для этого и нужен cron .
Если вам просто нужно это время от времени, а не постоянно, как в случае cron
, и решение для watch
недостаточно гибкое, вы также можете использовать старый добрый сценарий bash:
while true; do
# do stuff
sleep $[60 * 60]
done
Вы отредактируете файл cron, введя команду crontab -e
который переводит вас в редактор 'vi' (для текущей версии Linux и FreeBSD).
затем введите следующее: (введите «i» для вставки)
00 * * * * /path/to/sphinx_indexer.exe
затем сохраните и выйдите (нажмите «esc», затем введите следующее)
:wq