Бесконечный цикл на bash
By admin ~ Июнь 24th, 2010. Filed under: Console.
Иногда нужно запустить что то, работающее бесконечно долго и много раз. Например, какой нибуть скрипт - который парсит данные. И все время начинаю искать или вспоминать синтаксис баша, как на нем реализовать беспоконечный цикл. Наконец решил занести в закладки - вот он.
while true; do ./my_scripts; sleep 10; done;
./my_scripts - это наш многоразовый скрипт
sleep 10 - добавил для примера, что бы систему не грузить.
Пользуйтесь на здоровье.
Popularity: 27%
Похожие статьи:
Октябрь 21st, 2010 at 08:30
cat /dev/urandom | grep linuzzz
Февраль 12th, 2011 at 22:13
А почему не через крон?
Май 16th, 2011 at 18:10
Шумомер, потому, что иногда нужно выполнять операцию, которая не отнимает много времени и ресурсов, но выполнять её надо в бесконечном цикле, т.е как только она выполнилась, выполнять заново. Это может быть, например, какой нибудь проверкой.
Май 16th, 2011 at 18:12
А если будешь кроном, то не сможешь отследить, завершился скрипт или нет. И результат выполнения скрипта будет не известен, а внутри скрипта можно выполнять различные проверки, защищая от ошибок.
Октябрь 27th, 2011 at 16:07
Относительно часто возникает необходимость в бесконечном цикле. И постоянно нахожу его тут :о)
Спасибо!
Май 21st, 2020 at 12:06
И как его остановить?
Crtl-C запускает следующую итерацию
Май 21st, 2020 at 12:15
Сам отвечу - ctrl-C во время sleep позволяет вернуться в сеанс bash. Без него вечный цикл пока весь сеанс bash не прибьёте