1. Баш-массивы

Вы должны быть знакомы со списками Python и массивами JavaScript, но знаете ли вы, что в Bash также существуют одномерные массивы?

  • Массив Bash может быть определен с элементами внутри скобок () без пробелов между знаком = и скобками.
array=('Ashish' 1 3 'b')
  • Массив в Bash может содержать как числа, строки, так и пустыезначения.
  • Длину массива можно найти с помощью следующего синтаксиса:
array_length=${#array[@]}

Значение array_length можно вывести на экран с помощью echo $array_length . Это выведет на 4 .

Обратите внимание, что символы @ или * в квадратных скобках относятся к всем элементам массива.

  • Чтобы напечатать все значения в массиве, мы можем использовать следующий синтаксис:
echo ${array[*]}

or,

echo ${array[@]}

Обратите внимание, что массивы обозначаются фигурными скобками {} после знака $, в отличие от других переменных.

  • Значение по определенному индексу можно найти с помощью следующего синтаксиса:
echo ${array[0]}

Вышеприведенное будет выведено на Ashish .

  • Новые элементы могут быть добавлены в массив следующим образом:
array[5]='cat'

Это добавляет строку cat к индексу 5 в массиве.

Обратите внимание, что массивы Bash имеют индекс 0.

  • Можно перебирать индексы и значения элементов в массиве следующим образом:
for elem in ${!array[@]}; do
  echo "Element $elem is ${array[$elem]}"
done

2. Хэш-таблица/словарь Bash

  • Чтобы создать хеш-таблицу в Bash, состоящую из пар ключ-значение, можно использовать следующий синтаксис:
declare -A myHashTable
  • Пары ключ-значение можно добавить к этому следующим образом:
myHashTable[a]='Ashish'

myHashTable[b]='Bamania'
  • Для перебора пар ключ-значение можно использовать следующий синтаксис:
for key in "${!myHashTable[@]}"
> do
>   echo -n "key: $key, "
>   echo "value: ${myHashTable[$key]}"
> done

Это выведет на:

key: a, value: Ashish
key: b, value: Bamania

3. Цитаты Баша

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

Двойные кавычки используются для заключения текста подобно одинарным кавычкам и позволяют интерпретировать оболочке:

  • Знак доллара ($)
  • Обратная галочка (`)
  • Обратная косая черта (\)
  • Восклицательный знак (!)

Например, если мы определим переменную с именем variable следующим образом:

variable=123

echo "$variable" будет выводиться в 123, но

echo '$variable' будет выводиться в $variable .

4. Заявление о случае Bash

Подобно операторам switch-case в JavaScript, Bash также предлагает полезность для операторов case.

Его можно использовать следующим образом:

case expression in
    pattern1)
       statement 
    ;;
    pattern2)
        statement
    ;;
    *)
    pattern3)
      default statement
    ;;
esac

Например:

Давайте определим переменную с именем pet как pet='cat'.

case $pet in 
    cat) 
      echo -n “Meow!”
    ;; 
    dog) 
      echo -n “Woof!” 
    ;; 
    *) 
      echo -n “No sound found”
    ;; 
esac

Это выведет на Meow! .

5. Баш-функции

Функция в Bash может быть определена как:

function_name () {
  commands
}

or,

function function_name {
  commands
}

Обратите внимание, что фигурные скобки должны быть отделены от тела пробелами.

Чтобы вызвать функцию, просто напишите имя функции.

Давайте определим функцию с именем print_hello.

function print_hello {
  echo 'Hello!'
}

Функцию можно вызвать следующим образом:

print_hello

Это выводит на Hello! .

Это все для этой статьи!

Большое спасибо за внимание!

Если вы новичок в Python или программировании в целом, ознакомьтесь с моей новой книгой под названиемThe No Bulls**t Guide To Learning Pythonниже: