Что такое интерполяция переменных в сценариях оболочки
Интерполяция переменных — это процесс замены значения переменной ее содержимым. В оболочке bash переменные создаются с использованием синтаксиса <имя-переменной=значение>. Значение, присвоенное переменной, может быть строкой, числом или любым другим типом данных.
При ссылке на переменную в оболочке используется синтаксис <$имя-переменной>. Интерполяция переменных происходит, когда этот синтаксис используется в команде или сценарии, а значение переменной подставляется на ее место. Например, если переменной «name» присвоено значение «Mark», команда «echo $name» выведет «mark».
Интерполяцию переменных также можно комбинировать с другими командами оболочки и операторами для управления переменными. Например, синтаксис «${имя-переменной:-значение-по-умолчанию}» можно использовать для предоставления значения по умолчанию, если переменная не установлена. Это полезно при написании скриптов, которые должны обрабатывать отсутствующие или неопределенные переменные. Чтобы проиллюстрировать будущее, я привел два примера, демонстрирующих использование переменной интерполяции:
Пример 1: объединение строк
В этом примере интерполяция переменных используется для объединения двух строк. Переменные «имя» и «фамилия» определяются, а затем объединяются с использованием синтаксиса «$».
#!/бин/баш
Имя '=' 'Отметка'
Фамилия '=' 'Близнец'
Полное имя '=' ' $First_Name $Last_Name '
эхо 'Полное имя: $Полное_имя '
Вот вывод сценария оболочки, который объединяет две строки с использованием интерполяции переменных:
Пример 2: Проверка неопределенных переменных
В этом примере интерполяция переменных используется для проверки того, является ли переменная неопределенной. Переменная «имя файла» проверяется, установлена ли она. Если он не установлен, вместо него используется значение по умолчанию «test_file.sh».
#!/бин/баш
если [ -С ${имя_файла+x} ] ; затем
имя файла '=' 'файл_по умолчанию.txt'
быть
эхо 'Имя файла: $file_name '
Вот вывод сценария оболочки, который объявляет переменную и добавляет к ней значение, если оно не добавляется с помощью интерполяции строк:
Заключение
Интерполяция переменных — это мощная функция оболочки bash, которая позволяет пользователям ссылаться на значения, хранящиеся в переменных оболочки, и управлять ими. Это важный навык для всех, кто работает со сценариями оболочки или системным администратором. Примеры, представленные в этой статье, демонстрируют, как можно использовать интерполяцию переменных для объединения строк и проверки на наличие неопределенных переменных. Освоив интерполяцию переменных, разработчики сценариев оболочки и системные администраторы могут писать более эффективные и надежные сценарии.