Единственные причины, по которым я когда-либо использовал решение while
, это то, что мне нужно, чтобы мой код запускался чаще, чем раз в минуту, или если мне нужно было немедленно отреагировать на внешнее событие, ни одна из которых не является подходящей. здесь.
Мое мышление обычно совпадает с: cron
проверялось миллионами и миллионами людей на протяжении десятилетий, поэтому оно на минимум столь же надежно, как и код, который я только что связал.
Даже в ситуациях, когда я использовал while
, у меня все еще была работа cron
, чтобы перезапустить мой скрипт в случае сбоя.
Мой совет - просто использовать cron
. Вот для чего он предназначен. Кроме того, я редко перенаправляю вывод на /dev/null
, что делает его слишком сложным для отладки. Обычно я просто перенаправляю в файл в файловой системе /tmp
, чтобы видеть, что происходит.
Вы можете добавить, если у вас есть автоматизированная процедура очистки, и вы даже можете написать в более приватное место, если вы беспокоитесь о том, что кто-то увидит что-то в выводе.
Суть в том, что редкий сбой не может быть проанализирован, если вы отбрасываете выходные данные. Если вы считаете, что ваша работа не содержит ошибок, непременно отбросьте вывод, но я на всякий случай считаю, что мои скрипты не содержат ошибок.