Поиск по сайту:
Оптимизация препятствует эволюции. (Алан.Дж.Перлис)

Разница между ${} и $() в Bash

20.04.2023
Разница между ${} и $() в Bash

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

 

${} в Bash — расширение параметра

Синтаксис ${}, также известный как расширение параметра, используется для доступа к значению переменной в Bash. Он также используется для выполнения различных расширений параметров, таких как извлечение подстроки, изменение регистра и сопоставление с образцом. Ниже приведен синтаксис использования ${} в сценариях bash:

${variable}

 

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

#!bin/bash

name="Andrey"

echo "Мое имя ${name}"

 

В приведенном выше примере синтаксис ${name} используется для доступа к значению переменной name и включения его в выходную строку:

andreyex@destroyer:-$ bash bashfile.sh

Мое имя Andrey 

andreyex@destroyer: -S

 

$() в Bash — подстановка команд

С другой стороны, синтаксис $(), также называемый подстановкой команд, используется для выполнения команды и захвата ее вывода. Синтаксис выглядит следующим образом:

$(command)

 

Вот пример использования синтаксиса $():

#!bin/bash

files=$(ls)

echo "Файлы в текущем каталоге следующие: ${files}"

 

Здесь синтаксис $() используется для выполнения команды ls и записи ее вывода в переменную files. Принимая во внимание, что синтаксис ${} затем используется для включения списка файлов в выходную строку:

andreyex@destroyer:~$ bash bashfile.sh

Файлы в текущем каталоге следующие: bashfile.sh

Desktop

Documents

Downloads

Music

Pictures

Public

Templates

Videos

andreyex@destroyer: -$

 

Читать  Как установить значение ulimit в Linux навсегда

В целом синтаксис ${} используется для доступа к значению переменной, а синтаксис $() используется для выполнения команды и захвата ее вывода. Оба синтаксиса используются по-разному и не являются взаимозаменяемыми.

 

Заключение

Понимание различий между ${} и $() в Bash необходимо для эффективного написания сценариев оболочки, хотя оба синтаксиса могут выглядеть одинаково, они имеют разные функции и должны использоваться соответственно. Используя правильный синтаксис для правильной задачи, вы можете повысить эффективность и удобочитаемость ваших сценариев Bash.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (3 оценок, среднее: 5,00 из 5)
Загрузка...
Поделиться в соц. сетях:


0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

**ссылки nofollow

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии

Это может быть вам интересно


Рекомендуемое
HackRF One - это программно-определяемая платформа радиосвязи (SDR), которая может…

Спасибо!

Теперь редакторы в курсе.