Массив Bash - Как объявить массив строк в сценарии Bash

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

Объявление массива в Bash

Объявить массив в Bash очень просто, но обратите внимание на синтаксис. Если вы привыкли программировать на других языках, код может показаться вам знакомым, но есть тонкие различия, которые легко упустить.

Чтобы объявить массив, выполните следующие шаги:

  1. Дайте массиву имя
  2. После имени переменной поставьте знак равенства. Знак равенства не должен иметь пробелов вокруг него.
  3. Заключите массив в круглые скобки (а не в скобки, как в JavaScript).
  4. Введите строки, используя кавычки, но без запятых между ними.

Объявление вашего массива будет выглядеть примерно так

Вот и все! Это так просто.

Как получить доступ к массиву в Bash

Существует несколько различных способов циклического обращения к массиву. Вы можете либо перебирать сами элементы, либо перебирать индексы.

Как выполнить цикл по элементам массива

Чтобы перебрать элементы массива, ваш код должен выглядеть примерно так:

Если разложить это на части, то это в некоторой степени похоже на использование forEach в JavaScript. Для каждой строки (str) в массиве (myArray) выведите эту строку.

Вывод этого цикла выглядит следующим образом:

Символ @ в квадратных скобках указывает на то, что вы перебираете все элементы массива. Если бы вы опустили этот символ и просто написали for str in ${myArray}, была бы выведена только первая строка в массиве.

Как выполнить цикл по индексам массива

В качестве альтернативы можно выполнить цикл по индексам массива. Это похоже на цикл for в JavaScript и полезно, когда вы хотите иметь доступ к индексу каждого элемента.

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

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

Восклицательный знак в начале переменной myArray указывает на то, что вы обращаетесь к индексам массива, а не к самим элементам. Это может сбить с толку, если вы привыкли, что восклицательный знак обозначает отрицание, поэтому обратите на это внимание.

 Bash обычно не требует фигурных скобок для переменных, но требует для массивов. Поэтому вы заметите, что когда вы ссылаетесь на массив, вы делаете это с помощью синтаксиса ${myArray}, но когда вы ссылаетесь на строку или число, вы просто используете знак доллара: $i.

Заключение

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

Объявлять и использовать их несложно, но это отличается от других языков, поэтому будьте внимательны, чтобы избежать ошибок.

Понравилась статья? Поделиться с друзьями:
Добавить комментарий