about_Variable_Provider
공급자 이름
변수
드라이브
Variable:
기능
ShouldProcess
간단한 설명
PowerShell 변수 및 해당 값에 대한 액세스를 제공합니다.
자세한 설명
PowerShell 변수 공급자를 사용하면 현재 콘솔에서 PowerShell 변수를 가져와, 추가, 변경, 지우고 삭제할 수 있습니다.
PowerShell 변수 공급자는 자동 변수, 기본 설정 변수 및 사용자가 만든 변수를 포함하여 PowerShell에서 만드는 변수를 지원합니다.
변수 드라이브는 변수 개체만 포함하는 플랫 네임스페이스입니다. 변수에 자식 항목이 없습니다.
변수 공급자는 이 문서에서 설명하는 다음 cmdlet을 지원합니다.
PowerShell에는 변수를 보고 변경하도록 특별히 설계된 cmdlet 집합도 포함되어 있습니다. 변수 cmdlet을 사용하는 경우 이름에 드라이브를 지정할 Variable:
필요가 없습니다. 이 문서에서는 변수 cmdlet 작업을 다루지 않습니다.
참고 항목
PowerShell 식 파서도 사용하여 cmdlet을 사용하지 않고 변수 값을 만들고 보고 변경할 수 있습니다. 변수를 직접 사용하는 경우 달러 기호($
)를 사용하여 이름을 변수로 식별하고 할당 연산자(=
)를 사용하여 값을 설정하고 변경합니다. 예를 들어 $p = Get-Process
변수를 p
만들고 명령의 Get-Process
결과를 저장합니다.
이 공급자가 노출하는 형식
변수는 여러 가지 형식 중 하나일 수 있습니다. 대부분의 변수는 클래스의 인스턴스입니다 PSVariable
. 다른 변수 및 해당 형식은 아래에 나열되어 있습니다.
- 변수는
?
클래스의 인스턴스입니다QuestionMarkVariable
. - 변수는
null
클래스의 인스턴스입니다NullVariable
. - 최대 개수 변수는 클래스의 인스턴스입니다
SessionStateCapacityVariable
. LocalVariable
인스턴스에는 다음과 같은 현재 실행에 대한 정보가 포함되어 있습니다.MyInvocation
PSCommandPath
PSScriptRoot
PSBoundParameters
args
input
변수 드라이브 탐색
변수 공급자는 드라이브에 데이터 저장소를 노출합니다Variable:
. 변수를 사용하려면 위치를 Variable:
드라이브(Set-Location Variable:
)로 변경하거나 다른 PowerShell 드라이브에서 작업할 수 있습니다. 다른 위치에서 변수를 참조하려면 경로에서 드라이브 이름(Variable:
)을 사용합니다.
Set-Location Variable:
파일 시스템 드라이브로 돌아가려면 드라이브 이름을 입력합니다. 예를 들어 입력 합니다.
Set-Location C:
다른 PowerShell 드라이브의 변수 공급자와 함께 작업할 수도 있습니다. 다른 위치에서 변수를 참조하려면 경로에서 드라이브 이름을 Variable:
사용합니다.
참고 항목
PowerShell은 별칭을 사용하여 공급자 경로를 사용하는 친숙한 방법을 허용합니다. Get-ChildItemcd
의 별칭과 ls
같은 dir
명령은 Set-Location의 별칭입니다. Get-Locationpwd
의 별칭입니다.
변수 값 표시
현재 세션의 모든 변수 가져오기
이 명령은 현재 세션의 모든 변수 및 해당 값 목록을 가져옵니다. 모든 PowerShell 드라이브에서 이 명령을 사용할 수 있습니다.
Get-ChildItem -Path Variable:
공급자 경로를 사용하여 변수 가져오기
이 명령은 달러 기호($
)가 접두사로 지정된 공급자 경로를 사용하여 변수 값을 검색합니다. 이는 변수 이름 앞에 달러 기호($
)를 접두사로 지정하는 것과 같은 효과를 줍니다.
$variable:home
와일드카드를 사용하여 변수 가져오기
이 명령은 이름이 "max"로 시작하는 변수를 가져옵니다. 모든 PowerShell 드라이브에서 이 명령을 사용할 수 있습니다.
Get-ChildItem -Path Variable:max*
?의 값을 가져옵니다. 변수
이 명령은 Get-ChildItem의 매개 변수를 사용하여 -LiteralPath
드라이브 내에서 Variable:
변수 값을 ?
가져옵니다. 경로 ?
의 와일드카드이지만 Get-ChildItem
매개 변수 값 -LiteralPath
에서 와일드카드를 확인하려고 시도하지는 않습니다.
Get-ChildItem -Literalpath ?
ReadOnly 및 상수 변수 가져오기
이 명령은 값이 Constant
있거나 ReadOnly
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
값 없는 변수를 만들려면 대입 연산자를 생략합니다.
변수 변경
변수 이름 변경
이 명령은 cmdlet을 Rename-Item
사용하여 변수processes
의 a
이름을 .로 변경합니다.
Rename-Item -Path Variable:a -NewName processes
변수 값 변경
이 명령은 cmdlet을 Set-Item
사용하여 변수 값을 ErrorActionPreference
"Stop"으로 변경합니다.
Set-Item -Path Variable:ErrorActionPreference -Value Stop
변수 복사
이 명령은 cmdlet을 Copy-Item
사용하여 변수를 .에 processes
복사합니다 old_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로 설정
이 명령은 cmdlet을 Clear-Item
사용하여 변수 값을 processes
NULL로 변경합니다.
Clear-Item -Path Variable:processes
파이프라인 사용
공급자 cmdlet은 파이프라인 입력을 허용합니다. 파이프라인을 사용하여 한 cmdlet에서 다른 공급자 cmdlet으로 공급자 데이터를 전송하여 작업을 간소화할 수 있습니다. 공급자 cmdlet에서 파이프라인을 사용하는 방법에 대한 자세한 내용은 이 문서 전체에서 제공하는 cmdlet 참조를 참조하세요.
도움말 가져오기
Windows PowerShell 3.0부터 파일 시스템 드라이브에서 해당 cmdlet이 작동하는 방식을 설명하는 공급자 cmdlet에 대한 사용자 지정된 도움말 항목을 가져올 수 있습니다.
파일 시스템 드라이브에 대해 사용자 지정된 도움말 항목을 얻으려면 파일 시스템 드라이브에서 Get-Help 명령을 실행하거나 Get-Help의 매개 변수를 사용하여 -Path
파일 시스템 드라이브를 지정합니다.
Get-Help Get-ChildItem
Get-Help Get-ChildItem -Path variable:
참고 항목
PowerShell