Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Имя поставщика
«Переменная»
Drives
Variable:
Capabilities
ShouldProcess
Краткое описание
Предоставляет доступ к переменным PowerShell и их значениям.
Подробное описание
Поставщик переменных PowerShell позволяет получать, добавлять, изменять, очищать и удалять переменные PowerShell в текущей консоли.
Поставщик переменных PowerShell поддерживает создаваемые переменные, включая автоматические переменные, переменные предпочтения и создаваемые переменные.
Диск переменной — это неструктурированное пространство имен, содержащее только объекты переменной. Переменные не имеют дочерних переменных.
Поставщик переменной поддерживает следующие командлеты, описанные в этой статье.
PowerShell также включает набор командлетов, предназначенных специально для просмотра и изменения переменных. При использовании командлетов переменной не нужно указывать Variable: диск в имени. В этой статье не рассматривается работа с командлетами Переменной .
Примечание.
Вы также можете использовать средство синтаксического анализа выражений PowerShell для создания, просмотра и изменения значений переменных без использования командлетов. При работе с переменными напрямую используйте знак доллара ($), чтобы определить имя как переменную и оператор назначения (=), чтобы установить и изменить его значение.
Например, $p = Get-Process создает p переменную и сохраняет результаты команды в ней Get-Process .
Типы, предоставляемые этим поставщиком
Переменные могут быть одним из нескольких различных типов. Большинство переменных будут экземплярами PSVariable класса. Ниже перечислены другие переменные и их типы.
- Переменная
?— это экземплярQuestionMarkVariableкласса. - Переменная
null— это экземплярNullVariableкласса. - Максимальное число переменных — это экземпляры
SessionStateCapacityVariableкласса. -
LocalVariableЭкземпляры содержат сведения о текущем выполнении, например:MyInvocationPSCommandPathPSScriptRootPSBoundParametersargsinput
Навигация по дискам переменной
Поставщик переменной предоставляет хранилище данных на Variable: диске. Чтобы работать с переменными, можно изменить расположение на Variable: диск (Set-Location Variable:) или использовать любой другой диск PowerShell. Чтобы ссылаться на переменную из другого расположения, используйте имя диска (Variable:) в пути.
Set-Location Variable:
Чтобы вернуться к диску файловой системы, введите имя диска. Например, введите:
Set-Location C:
Вы также можете работать с поставщиком переменной из любого другого диска PowerShell. Чтобы ссылаться на переменную из другого расположения, используйте имя Variable: диска в пути.
Примечание.
PowerShell использует псевдонимы, чтобы предоставить знакомый способ работы с путями поставщика. Такие команды, как dir и ls теперь являются псевдонимами для Get-ChildItem, cd — это псевдоним для set-Location. и pwd является псевдонимом для Get-Location.
Отображение значения переменных
Получение всех переменных в текущем сеансе
Эта команда возвращает список всех переменных и их значений в текущем сеансе. Эту команду можно использовать из любого диска PowerShell.
Get-ChildItem -Path Variable:
Получение переменной с помощью пути поставщика
Эта команда извлекает значение переменных, используя префикс пути поставщика, префиксированного знаком доллара ($). Это имеет тот же эффект, что и префикс имени переменных с символом доллара ($).
$Variable:HOME
Получение переменных с помощью подстановочных знаков
Эта команда получает переменные с именами, начинающимися с "Max". Эту команду можно использовать из любого диска PowerShell.
Get-ChildItem -Path Variable:Max*
Получение значения объекта ? переменная
Эта команда использует -LiteralPath параметр Get-ChildItem для получения значения переменной ? из Variable: диска. Это ? подстановочный знак в путях, но Get-ChildItem не пытается устранить подстановочные знаки в значениях -LiteralPath параметра.
Get-ChildItem -LiteralPath ?
Получение переменных ReadOnly и Констант
Эта команда получает переменные, имеющие значения ReadOnly или Constant значения свойства Options .
Get-ChildItem -Path Variable: |
Where-Object {
$_.Options -match 'Constant' -or
$_.Options -match 'ReadOnly'
} |
Format-List -Property Name, Value, Options
Создание переменных
Создание новой переменной
Эта команда создает services переменную и сохраняет результаты команды в ней Get-Service . Так как текущее расположение находится на Variable: диске, значение -Path параметра — точка (.), представляющая текущее расположение.
Круглые скобки вокруг Get-Service команды гарантируют выполнение команды перед созданием переменной. Без круглых скобок значение новой переменной — это строка Get-Service.
New-Item -Path . -Name services -Value (Get-Service)
Создание переменной с помощью абсолютного пути
Эта команда создает services переменную и сохраняет в ней Get-Service результат команды.
New-Item -Path Variable:services -Value Get-Service
Чтобы создать переменную без значения, опустите оператор присваивания.
Изменение переменных
Изменение имени переменной
Эта команда использует Rename-Item командлет для изменения имени переменной aprocessesна .
Rename-Item -Path Variable:a -NewName processes
Изменение значения переменной
Эта команда использует Set-Item командлет для изменения значения переменной ErrorActionPreference на "Stop".
Set-Item -Path Variable:ErrorActionPreference -Value Stop
Копирование переменной
Эта команда использует Copy-Item командлет для копирования переменной processesold_processes в . При этом создается новая переменная с именем old_processes , которая имеет то же значение, что processes и переменная.
Copy-Item -Path Variable:processes -Destination Variable:old_processes
Удаление переменной
Эта команда удаляет serv переменную из текущего сеанса. Эту команду можно использовать в любом диске PowerShell.
Remove-Variable -Path Variable:serv
Удаление переменных с помощью параметра -Force
Эта команда удаляет все переменные из текущего сеанса, за исключением переменных, свойство Options которых имеет значениеConstant.
-Force Без параметра команда не удаляет переменные, свойство Options которых имеет значениеReadOnly.
Remove-Item Variable:* -Force
Задание значения переменной значением NULL
Эта команда использует Clear-Item командлет для изменения значения переменной processes на NULL.
Clear-Item -Path Variable:processes
Использование конвейера
Командлеты поставщика принимают входные данные конвейера. Конвейер можно использовать для упрощения задачи, отправляя данные поставщика из одного командлета в другой командлет поставщика. Дополнительные сведения об использовании конвейера с командлетами поставщика см. в приведенных в этой статье ссылок на командлеты.
Получение помощи
Начиная с Windows PowerShell 3.0, стали доступны настраиваемые разделы справки по командлетам поставщика, в которых объясняется поведение этих командлетов на диске файловой системы.
Чтобы получить разделы справки, настроенные для диска файловой системы, выполните команду Get-Help на диске файловой системы или используйте -Path параметр Get-Help , чтобы указать диск файловой системы.
Get-Help Get-ChildItem
Get-Help Get-ChildItem -Path Variable:
См. также
PowerShell