8 основных принципов написания сценариев bash для каждого программиста.

Большинство программистов работают с Linux и наверняка столкнутся с bash и его странными скриптами («@» для получения всех значений массива — что!!)

Итак, вот 8 концепций, которые нужно охватить, чтобы понять и написать свои собственные сценарии bash менее чем за 10 минут.

Основы

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

Его также называют оболочкой, потому что он окружает ядро ​​как оболочка и помогает программистам выполнять необходимые действия, взаимодействуя с ядром, скрывая его тонкости. Кроме того, Bash (оболочка Bourne) является развитием оболочки Bourne.

Большинство программистов, должно быть, использовали командную строку для создания, перемещения и копирования файлов в среде Linux. Сценарий Bash — это способ облегчить действия непрерывным программным способом, поэтому он очень эффективен для автоматизации задач, DevOps, тестирования и охвата. и т.д. Поскольку мы закончили с введением и историей, давайте перейдем к основной части.

Привет, мир

Сценарий bash должен начинаться с вызова своего пути для их запуска вместе с «#!» как показано ниже.

#!/bin/bash
echo "Hello World"

и мы не можем не использовать операторы печати в нашем коде, какой бы язык ни использовался для отладки.

Таким образом, echo эквивалентен print в сценариях Bash. Пригодится

Переменные

Переменным можно присваивать знак «равно» (=), и для них нет типов, таких как C/C++, Java и т. д. Они могут содержать как числа, так и строки.

Для ссылки на переменную используется знак «$».

#!/bin/bash
favorite_lunch='biriyani'
echo "Cant live without" ${favorite_lunch}

Совет. Рекомендуется заключать ссылки на переменные в квадратные скобки, как показано на рисунке.

Аргументы

DRY (не повторяйтесь) — одна из основных концепций хорошего кода, нам нужны функции и способы передачи им аргументов.

#!/bin/bash
function menu() {
    echo ${1}
    echo ${2}
}
    
menu "Starters" "Dessert"

Приведенный выше код печатает «Закуски», а затем «Десерт» в новой строке.

Объяснение: функции определяются с помощью ключевого слова с метким названием «функция», за которым следует имя функции в круглых скобках и фигурных скобках. Функции получают аргументы в порядке численного, начиная с 1.

Совет. Значение аргумента, равное 0, даст имя функции.

Арифметические операции

#!/bin/bash
function calculate() {
    sum=$(($1+$2))
    echo ${sum}
}
    
calculate 20 30

(( )) → составная запись для вычисления выражения

$ → оператор переменной для сохранения выражения.

Выше показана арифметическая операция сложения, аналогичным образом применимы и другие арифметические операторы.

Операторы → сложение (+), вычитание (-), умножение (*), деление (/), возведение в степень (**), модуль (%)

Условные операторы

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

Bash предоставляет условные операторы, такие как if, else и case.

function calculate() {
    if [[ $1 == "add" ]]; then
        sum=$(($2+$3))
        echo ${sum}
    elif [[ $1 == "sub" ]]; then
        sub=$(($2-$3))
        echo ${sub}
    fi
}
    
calculate add 30 20
calculate sub 30 20

Операторы if заканчиваются fi, а операторы case заканчиваются esac, если условные операторы могут быть заключены в () или [] и двойные круглые скобки (()) или двойные квадратные скобки [[ ]] для нескольких условий.

function calculate() {
    case $1 in 
        "add") 
            sum=$(($2+$3))
            echo $sum ;;
        "sub") 
            sub=$(($2-$3))
            echo $sub ;;
    esac
}
    
calculate add 40 20
calculate sub 40 20

Совет. если вас не устраивает использование двойных или одинарных паратезов или квадратных скобок, используйте двойные.

Это первая часть серии статей о написании сценариев bash. Подпишитесь на меня, если статья окажется вам полезной, и обратитесь к этой серии (будет обновляться), чтобы стать профессионалом в написании сценариев bash, чтобы сэкономить массу бесплатных время и отдых на Бали раньше, чем вы ожидали🌴🌅.