Архив

Archive for Октябрь 2016

Использование пользовательских областей в Powershell

При написании скриптов Powershell бывают случаи, когда нужно на время изменить значение переменной, а затем восстановить исходное значение. Например, переопределить реакцию Powershell на возникновение не прерывающей ошибки. За это отвечает переменная $ErrorActionPreference. (Подробнее об этой и других переменных, которые задают поведение Powershell можно почитать, например на Technet.) Как правило в таком случае сохраняют исходное значение во временной переменной, а после выполнения определённых действий – восстанавливают:

"Исходное значение ErrorActionPreference - $ErrorActionPreference"

# Сохраняем исходное значение переменной во временную переменную
$ErrorActionPreferenceOLD = $ErrorActionPreference

# Меняем значение переменной на нужное
$ErrorActionPreference = 'stop'

"Изменённое значение ErrorActionPreference - $ErrorActionPreference"
# Выполняем какие-то действия...

# Восстанавливаем исходное значение переменной
$ErrorActionPreference = $ErrorActionPreferenceOLD

"Восстановленное значение ErrorActionPreference - $ErrorActionPreference"

В результате получим изменённое на время значение переменной:

Исходное значение ErrorActionPreference         - Continue
Изменённое значение ErrorActionPreference       - Stop
Восстановленное значение ErrorActionPreference  - Continue

Этого же результата можно добиться более простым путём.

Тег «Далее»

Рубрики:Powershell Метки: