🐧 Bash скрипты: Пример установки переменных

by itisgood

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

Установка переменной в скрипте Bash позволяет вам вспомнить эту информацию позже в скрипте или изменить ее по мере необходимости.

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

Основы скриптов Bash, часть первая

В этом руководстве вы узнаете, как задавать переменные и использовать их в скриптах Bash в системе Linux.

Посмотрите несколько примеров, показанных ниже, чтобы увидеть, как работают переменные.

Как установить переменную в скриптах Bash

Сначала давайте рассмотрим, как установить переменную.

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

#!/bin/bash

var="Hello World"

echo $var

Выполнение скрипта дает нам следующий результат:

$ ./test.sh
Hello World

Это, вероятно, самый простой пример переменной, но он доносит суть. Давайте разберемся, что здесь происходит:

  • Имя переменной в этом примере – просто var.
  • Переменная объявляется с помощью знака равенства =.
  • Переменная устанавливается в значение “Hello World”. Кавычки в данном случае необходимы из-за пробела.
  • Чтобы вызвать переменную в скрипте потом, мы предваряем ее знаком доллара $.

Далее посмотрите примеры ниже, чтобы увидеть больше практических примеров установки переменной в скриптах Bash.

Bash Script: Примеры установки переменных

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

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

Вот пример, в котором текущая дата хранится в переменной, а затем выводится на терминал.

Обратите внимание, что для того, чтобы это сработало, мы должны использовать вложенную оболочку Bash с синтаксисом $( ), иначе команда не будет выполнена.

#!/bin/bash

date=$(date)

echo $date

Вот результат выполнения скрипта:

$ ./test.sh 
Sat 26 Feb 2022 08:51:19 PM EST

Одна и та же переменная может быть объявлена несколько раз в скрипте.

Посмотрите пример ниже, где переменная $date имеет два разных значения в разных местах скрипта.

#!/bin/bash

date=$(date +"%A")

echo "The day of the week is $date"

date=$(date +"%B")

echo "The current month is $date"

Вот результат выполнения:

$ ./test.sh 
The day of the week is Saturday
The current month is February

Урок, который можно извлечь из этого примера, заключается в том, что вы можете повторно использовать переменную внутри скрипта.

Давайте рассмотрим, как запросить у пользователя ответ и поместить эти данные в переменную.

#!/bin/bash

echo "Enter a directory."
read directory

number=$(ls -l $directory | wc -l)

echo "There are $number files in $directory"

Вот результат выполнения скрипта:

$ ./test.sh 
Enter a directory.
/etc
There are 225 files in /etc

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

Здесь есть и другой урок.

Обратите внимание, что при объявлении переменной $number мы также используем переменную $directory.

Другими словами, переменная внутри переменной.

Заключение

В этой статье вы узнали, как задавать переменные и использовать их в скриптах Bash в системе Linux.

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

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

см. также

 

You may also like

Leave a Comment