Перейти к основному содержимому

В чем разница между $VAR и ${VAR}?

·134 слов·1 минута
linux
Юрий Семеньков
Автор
Юрий Семеньков
DevOps, tech, geek, mentor

Это реально частый вопрос. Рассказываю в дополнение к посту про подстановку переменных в файл.

Тут нет никакого rocket-science и разница только в том, как командный интерпретатор (Bash, zsh, sh, тысячи их) определит границы названия переменной:

$VAR — хорошо, когда название переменной отделено от другого текста неиспользуемыми символами, например пробелом, или backslash. А вот если переменную вставим в слово, то она будет интепретирована неверно:

VAR=eto
echo $VAR      # Выведет eto
echo $VARgeek  # Выведет значение VARgeek, если такое есть, иначе — пусто

${VAR} — надежнее. Помогает точно отделить название переменной от другого текста:

VAR=eto
echo ${VAR}     # Выведет eto
echo ${VAR}geek # Выведет etogeek

🙋‍♂️С комментариями можно смело приходить в наш телеграм-чат.

🌀Так же рекомендую подписаться на телеграм-канал, чтобы не пропускать классные посты и анонсы новых статей.

🎬 А видео выходят на Youtube, канал @etogeek.

Related

Увеличение разделов в Linux на горячую
·1141 слово·6 минут
linux гайды
Борьба с продуктивностью. Или за.
·789 слов·4 минут
продуктивность