Интерполяция строки

PowerShell:
Интерполяция строки

Как это сделать:

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

$name = "Алекс"
$day = (Get-Date).DayOfWeek

# Базовая интерполяция переменной
"Привет, $name! Счастливого $day!"

# Интерполяция выражения
"Пи до двух знаков после запятой равно $(Math::Round([Math]::Pi, 2))"

# Вывод
Привет, Алекс! Счастливая Среда!
Пи до двух знаков после запятой равно 3.14

Подробнее

PowerShell заимствовала интерполяцию строк из более ранних языков программирования, таких как Perl. До версии PowerShell v3 мы использовали конкатенацию с оператором + или оператор форматирования -f. Вот эволюция:

  • Старая школьная конкатенация: "Привет, " + $name + "! Сегодня " + $day + "."
  • Оператор форматирования: "Привет, {0}! Сегодня {1}." -f $name, $day

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

Смотрите также