Системным администраторам часто приходится выполнять повторяющиеся операции. Одним из способов автоматизации подобных процессов является использование скриптов с циклами.
В этой статье мы покажем практические примеры использования цикла for в операционной системе Linux.
Содержание:
Что такое цикл for
Цикл for — это управляющая конструкция, которая позволяет многократно выполнять набор команд для определенного диапазона значений или списка элементов.
Читайте также: 10 полезных советов для написания эффективных bash скриптов в Linux.
Основной синтаксис цикла for в Linux выглядит следующим образом:
Где:
for
— ключевое слово, которое определяет начало цикла;variable
— переменная, которая используется для попеременного хранения каждого элемента в списке во время каждой итерации;in
— ключевое слово, которое отделяет список элементов;item1 item2 item3 ...
— диапазон элементов или сами элементы, которые будет проходить цикл;do
— ключевое слово, которое указывает на начало тела цикла;commands
— действия, которые нужно выполнить для каждого элемента;done
— ключевое слово, которое указывает на конец тела цикла.
Важно: элементы должны быть перечислены через пробелы.
Примеры использования for в Linux
Начнем с самого простого примера: выведем на экран список перечисленных элементов, которые будут перебираться в цикле:
Читайте также: Изучение базового написания скриптов оболочки (Shell Scripting) и файловой системы Linux, устранение неполадок — LFCS часть 10.
Применение диапазонов элементов
Если Вы работаете с натуральными числами, для их перечисления можно использовать диапазоны. Диапазоны чисел помещаются в фигурные скобки { }
. Например, чтобы перебрать все числа от 1 до 5, используется конструкция {1..5}
:
Можно немного усложнить этот цикл и добавить шаг прохода элементов. Для этого придется слегка изменить конструкцию указания диапазона {num..num1..step}
, где step
— шаг. Например:
В этом примере, мы указали шаг 2, и цикл перечислил только элементы 1, 3, 5, 7, 9.
Применение массивов элементов
Помимо диапазонов для перебора можно использовать массивы. Массив — это структурированный набор данных. Элементы в массиве имеют собственные индексы. Первый элемент массива имеет индекс 0, второй — 1, третий — 2 и так далее.
Для примера создадим массив, в котором будут находиться названия фруктов, и выведем на экран каждый его элемент:
Читайте также: Как настроить автоматическое выполнение команд/скриптов во время перезагрузки или запуска системы.
Важно: оператор @
означает все элементы массива.
Следовательно, чтобы вывести на экран какой-то конкретный элемент, укажите вместо оператора @
его индекс. Например, отобразим на экране первый элемент массива:
Использование оператора continue
Оператор continue
заставляет цикл немедленно перейти к следующей его итерации. Зачастую он используется с условиями (conditions) для пропуска указанной итерации цикла. Например:
В данном случаем мы пропустили элемент 3
из заданного диапазона.
Использование оператора break
Оператор break
прерывает работу цикла. Как и continue
, он часто используется с условиями. Для примера будем перебирать числа от 1 до 5, но прервем цикл на элементе 3:
Читайте также: 11 примеров настройки выполнения регулярных задач с помощью Cron в Linux.
Написание циклов с синтаксисом языка C
В предыдущих примерах мы использовали конструкцию циклов, характерную для скриптов Bash. Однако для написания циклов в Linux можно применять и синтаксис языка программирования C. Например, перечислим все числа от 1 до 5:
Давайте немного усложним этот код, добавив условие. Допустим, нам нужно вывести все числа от 1 до 10 и указать их четность или нечетность:
Выводы
Цикл for
в Linux позволяет автоматизировать процесс выполнение различных операций. В этой статье мы показали лишь базовые примеры его использования в скриптах. Надеемся, что полученные знания помогут значительно повысить Вашу производительность и эффективность работы с командной строкой Linux.
Спасибо за время, уделенное прочтению статьи!
Если возникли вопросы — задавайте их в комментариях.
Подписывайтесь на обновления нашего блога и оставайтесь в курсе новостей мира инфокоммуникаций!
Чтобы знать больше и выделяться знаниями среди толпы IT-шников, записывайтесь на курсы Cisco, курсы по кибербезопасности, полный курс по кибербезопасности, курсы DevNet / DevOps (программируемые системы) от Академии Cisco, курсы Linux от Linux Professional Institute на платформе SEDICOMM University (Университет СЭДИКОММ).
Курсы Cisco, Linux, кибербезопасность, DevOps / DevNet, Python с трудоустройством!
- Поможем стать экспертом по сетевой инженерии, кибербезопасности, программируемым сетям и системам и получить международные сертификаты Cisco, Linux LPI, Python Institute.
- Предлагаем проверенную программу с лучшими учебниками от экспертов из Cisco Networking Academy, Linux Professional Institute и Python Institute, помощь сертифицированных инструкторов и личного куратора.
- Поможем с трудоустройством и стартом карьеры в сфере IT — 100% наших выпускников трудоустраиваются.
- Проведем вечерние онлайн-лекции на нашей платформе.
- Согласуем с вами удобное время для практик.
- Если хотите индивидуальный график — обсудим и реализуем.
- Личный куратор будет на связи, чтобы ответить на вопросы, проконсультировать и мотивировать придерживаться сроков сдачи экзаменов.
- Всем, кто боится потерять мотивацию и не закончить обучение, предложим общение с профессиональным коучем.
- отредактировать или создать с нуля резюме;
- подготовиться к техническим интервью;
- подготовиться к конкурсу на понравившуюся вакансию;
- устроиться на работу в Cisco по специальной программе. Наши студенты, которые уже работают там: жмите на #НашиВCisco Вконтакте, #НашиВCisco Facebook.