ГлавнаяОперационные системыLinuxКак использовать Bash для команд цикла

Как использовать Bash для команд цикла

Один из лучших способов облегчить себе жизнь с помощью технологий, будь то на работе или дома, — использовать автоматизацию. Автоматизация задач с помощью сценариев и заданий по расписанию — это верный способ сэкономить время, головную боль и усилия. Однако не сразу понятно, с чего начать. Здесь мы покажем вам, как начать работу с командой цикла Bash for , одним из основных инструментов автоматизации ИТ.

Читайте также: Используйте эти сочетания клавиш для быстрого перемещения в Bash

Настройка тестовой среды

Первое, что вам понадобится, — это работающий экземпляр Bash. Это оболочка по умолчанию в Терминале в Linux, Unix, BSD и macOS (если вы не используете зш ). Вы можете проверить, какую оболочку вы используете, введя в терминал следующую команду:

echo $SHELL

Он должен распечатать оболочку, которую вы используете. В выводе указано, что я использую /bin/bash, а это именно то, что мне нужно.

Bash для оболочки цикла

Вам также понадобится текстовый редактор — любой редактор, который вы выберете, подойдет. Я использую Nano в терминале, но вы также можете легко использовать Vim или Emacs в терминале или что-то вроде Gedit, Kate или Sublime в графическом интерфейсе.

Создайте файл сценария в текстовом редакторе, используя команду touch или просто введя имя текстового редактора и имя файла, который вы хотите создать. Что касается меня, я мог бы просто ввести nano for-loop-test.sh и было бы здорово.

Цикл Bash For: основы

Цикл For в Bash сообщает оболочке выполнить итерацию по указанному диапазону объектов и выполнить указанную команду для этих объектов. Что это значит? Я думаю, будет проще показать вам. Это очень простой цикл For.

Пример цикла Bash For 1

В первой строке for i in 1 2 3 4 5 задается цифра переменная «i» и диапазон от 1 до 5. С таким же успехом это может быть другая, более сложная последовательность чисел, или это может быть список введенных туда файлов или каталог.

Следующий бит — это базовое форматирование: команда, которую нужно выполнить, находится во вкладке. do и done являются частью синтаксиса цикла For и должны присутствовать там. Если бы я запустил этот скрипт, я бы получил такой результат:

Test round 1
Test round 2
Test round 3
Test round 4
Test round 5
Выход Bash For Loop 1

Вы можете увидеть, как появляется эта переменная. Она помогает вам идентифицировать каждый отдельный объект в этом входном диапазоне. Чтобы указать несколько более сложные диапазоны чисел, вы можете использовать фигурные скобки. Чтобы указать тот же диапазон, что и ранее, вы можете изменить for $i in 1 2 3 4 5 на for $i in {1..5}. Результат будет таким же. Вы также можете рассчитывать его по определенным числам. Это подсчет всех чисел на 3 от 0 до 27.

Bash для количества циклов
Bash для вывода количества циклов

В сценариях чаще встречается выполнение определенной команды над набором файлов. Если бы я хотел использовать cat для группы файлов в каталоге, я мог бы сделать это, изменив сценарий на следующий:

Bash для каталога цикла<

Это выведет на терминал выходные данные всех файлов в test-directory .

Bash для цикла ll

В моем случае результат будет выглядеть следующим образом.

Bash для вывода каталога цикла

Вы можете начать понимать, насколько мощным может быть цикл For. Это только поверхностное описание. Вы можете объединить несколько команд между do  и done, а также использовать условные операторы, чтобы усложнить команды.

Не забудьте прочитать другие наши статьи о Bash, например Советы и рекомендации Bash для более эффективной работы в терминале и некоторые из Специальные символы Bash, которые вы должны знать .

ПОХОЖИЕ СТАТЬИ

Популярные записи