Get-Location
현재 작업 위치 또는 위치 스택에 대한 정보를 가져옵니다.
구문
Location (기본값)
Get-Location
[-PSProvider <String[]>]
[-PSDrive <String[]>]
[<CommonParameters>]
Stack
Get-Location
[-Stack]
[-StackName <String[]>]
[<CommonParameters>]
Description
Get-Location cmdlet은 pwd(인쇄 작업 디렉터리) 명령과 마찬가지로 현재 디렉터리를 나타내는 개체를 가져옵니다.
PowerShell 드라이브 간에 이동하면 PowerShell은 각 드라이브에 사용자의 위치를 유지합니다. 이 cmdlet을 사용하여 각 드라이브에서 위치를 찾을 수 있습니다.
이 cmdlet을 사용하여 런타임에 현재 디렉터리를 가져와서 PowerShell 프롬프트에 현재 디렉터리를 표시하는 함수와 같은 함수 및 스크립트에서 사용할 수 있습니다.
이 cmdlet을 사용하여 위치 스택의 위치를 표시할 수도 있습니다. 자세한 내용은 참고 사항 및 Stack 및 StackName 매개 변수에 대한 설명을 참조하세요.
예제
예제 1: 현재 드라이브 위치 표시
이 명령은 현재 PowerShell 드라이브의 위치를 표시합니다.
PS C:\Windows> Get-Location
Path
----
C:\Windows
예를 들어 Windows 드라이브의 C: 디렉터리에 있는 경우 해당 디렉터리의 경로가 표시됩니다.
예제 2: 다른 드라이브의 현재 위치 표시
이 예제에서는 Get-Location 사용하여 현재 위치를 다른 PowerShell 드라이브에 표시하는 방법을 보여 줍니다.
Set-Location 다른 PSDrive의 여러 다른 경로로 위치를 변경하는 데 사용됩니다.
PS C:\> Set-Location C:\Windows
PS C:\Windows> Set-Location HKLM:\Software\Microsoft
PS HKLM:\Software\Microsoft> Set-Location "HKCU:\Control Panel\Input Method"
PS HKCU:\Control Panel\Input Method> Get-Location -PSDrive C
Path
----
C:\Windows
PS HKCU:\Control Panel\Input Method> Get-Location -PSDrive HKLM
Path
----
HKLM:\Software\Microsoft
PS HKCU:\Control Panel\Input Method> Set-Location C:
PS C:\Windows> Get-Location -PSProvider Registry
Path
----
HKCU:\Control Panel\Input Method
예제 3: 스택을 사용하여 위치 가져오기
이 예제에서는 Stack 및 Get-Location 매개 변수를 사용하여 현재 위치 스택 및 대체 위치 스택의 위치를 나열하는 방법을 보여 줍니다.
Push-Location cmdlet은 세 개의 다른 위치로 변경하는 데 사용됩니다. 세 번째 푸시는 다른 스택 이름을 사용합니다.
Get-Location 매개 변수는 기본 스택의 내용을 표시합니다.
Get-Location 매개 변수는 Stack2스택의 내용을 표시합니다.
PS C:\> Push-Location C:\Windows
PS C:\Windows>Push-Location System32
PS C:\Windows\System32>Push-Location WindowsPowerShell -StackName Stack2
C:\Windows\System32\WindowsPowerShell>Get-Location -Stack
Path
----
C:\Windows
C:\
C:\Windows\System32\WindowsPowerShell>Get-Location -StackName Stack2
Path
----
C:\Windows\System32
예제 4: PowerShell 프롬프트 사용자 지정
이 예제에서는 PowerShell 프롬프트를 사용자 지정하는 방법을 보여줍니다.
PS C:\>
function prompt { 'PowerShell: ' + (Get-Location) + '> '}
PowerShell: C:\>
프롬프트를 정의하는 함수에는 콘솔에 프롬프트가 나타날 때마다 실행되는 Get-Location 명령이 포함됩니다.
기본 PowerShell 프롬프트의 형식은 prompt특수 함수에 의해 정의됩니다.
prompt라는 새 함수를 만들어 콘솔에서 프롬프트를 변경할 수 있습니다.
현재 프롬프트 함수를 보려면 다음 명령을 입력합니다. Get-Content Function:\prompt
매개 변수
-PSDrive
지정된 PowerShell 드라이브의 현재 위치를 가져옵니다.
예를 들어 Cert: 드라이브에 있는 경우 이 매개 변수를 사용하여 C: 드라이브에서 현재 위치를 찾을 수 있습니다.
매개 변수 속성
| 형식: | String[] |
| Default value: | None |
| 와일드카드 지원: | False |
| DontShow: | False |
매개 변수 집합
Location
| Position: | Named |
| 필수: | False |
| 파이프라인의 값: | False |
| 속성 이름별 파이프라인의 값: | True |
| 나머지 인수의 값: | False |
-PSProvider
지정된 PowerShell 공급자가 지원하는 드라이브의 현재 위치를 가져옵니다. 지정된 공급자가 둘 이상의 드라이브를 지원하는 경우 이 cmdlet은 가장 최근에 액세스한 드라이브의 위치를 반환합니다.
예를 들어 C: 드라이브에 있는 경우 이 매개 변수를 사용하여 PowerShell 레지스트리 공급자의 드라이브에서 현재 위치를 찾을 수 있습니다.
매개 변수 속성
| 형식: | String[] |
| Default value: | None |
| 와일드카드 지원: | False |
| DontShow: | False |
매개 변수 집합
Location
| Position: | Named |
| 필수: | False |
| 파이프라인의 값: | False |
| 속성 이름별 파이프라인의 값: | True |
| 나머지 인수의 값: | False |
-Stack
이 cmdlet은 현재 위치 스택에 추가된 위치를 표시합니다.
Push-Location cmdlet을 사용하여 스택에 위치를 추가할 수 있습니다.
위치를 다른 위치 스택에 표시하려면 StackName 매개 변수를 사용합니다. 위치 스택에 대한 자세한 내용은 참고참조하세요.
매개 변수 속성
| 형식: | SwitchParameter |
| Default value: | None |
| 와일드카드 지원: | False |
| DontShow: | False |
매개 변수 집합
Stack
| Position: | Named |
| 필수: | False |
| 파이프라인의 값: | False |
| 속성 이름별 파이프라인의 값: | False |
| 나머지 인수의 값: | False |
-StackName
문자열 배열로 명명된 위치 스택을 지정합니다. 하나 이상의 위치 스택 이름을 입력합니다.
현재 위치 스택의 위치를 표시하려면 Stack 매개 변수를 사용합니다. 위치 스택을 현재 위치 스택으로 만들려면 Set-Location cmdlet을 사용합니다.
이 cmdlet은 현재 스택이 아니면 명명되지 않은 기본 스택의 위치를 표시할 수 없습니다.
매개 변수 속성
| 형식: | String[] |
| Default value: | None |
| 와일드카드 지원: | False |
| DontShow: | False |
매개 변수 집합
Stack
| Position: | Named |
| 필수: | False |
| 파이프라인의 값: | False |
| 속성 이름별 파이프라인의 값: | True |
| 나머지 인수의 값: | False |
CommonParameters
이 cmdlet은 일반적인 매개 변수인 -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction 및 -WarningVariable 매개 변수를 지원합니다. 자세한 내용은 about_CommonParameters를 참조하세요.
입력
None
이 cmdlet에 입력을 파이프할 수 없습니다.
출력
System.Management.Automation.PathInfo or System.Management.Automation.PathInfoStack
Stack 또는 StackName 매개 변수를 사용하는 경우 이 cmdlet은 PathInfoStack 개체를 반환합니다. 그렇지 않으면 PathInfo 개체를 반환합니다.
참고
PowerShell은 프로세스당 여러 Runspace를 지원합니다. 각 Runspace는 고유한 현재 디렉터리를 가지고 있습니다 .
이는 [System.Environment]::CurrentDirectory것과 동일하지 않습니다. 이 동작은 명시적 디렉터리 경로를 제공하지 않고 .NET API를 호출하거나 네이티브 애플리케이션을 실행할 때 문제가 될 수 있습니다.
Get-Location cmdlet은 현재 PowerShell Runspace의 현재 디렉터리를 반환합니다.
이 cmdlet은 모든 공급자가 노출하는 데이터를 사용하도록 설계되었습니다. 세션의 공급자를 나열하려면 Get-PSProvider입력합니다. 추가 정보는 about_Providers를 참조하십시오.
PSProvider, PSDrive, Stack및 StackName 매개 변수가 상호 작용하는 방법은 공급자에 따라 달라집니다. 드라이브와 해당 드라이브를 노출하지 않는 공급자를 모두 지정하는 등의 일부 조합으로 인해 오류가 발생합니다. 매개 변수를 지정하지 않으면 이 cmdlet은 현재 작업 위치를 포함하는 공급자에 대한 PathInfo 개체를 반환합니다.
스택은 가장 최근에 추가된 항목만 액세스할 수 있는 마지막 첫 번째 목록입니다. 항목을 사용하는 순서대로 스택에 추가한 다음 역순으로 사용할 항목을 검색합니다. PowerShell을 사용하면 위치 스택에 공급자 위치를 저장할 수 있습니다. PowerShell은 명명되지 않은 기본 위치 스택을 만들고 명명된 여러 위치 스택을 만들 수 있습니다. 스택 이름을 지정하지 않으면 PowerShell은 현재 위치 스택을 사용합니다. 기본적으로 명명되지 않은 기본 위치는 현재 위치 스택이지만 Set-Location cmdlet을 사용하여 현재 위치 스택을 변경할 수 있습니다.
위치 스택을 관리하려면 다음과 같이 PowerShell *-Location cmdlet을 사용합니다.
위치 스택에 위치를 추가하려면
Push-Locationcmdlet을 사용합니다.위치 스택에서 위치를 얻으려면
Pop-Locationcmdlet을 사용합니다.현재 위치 스택의 위치를 표시하려면 cmdlet의
Get-Location매개 변수를 사용합니다. 명명된 위치 스택에 위치를 표시하려면 cmdlet의Get-Location매개 변수를 사용합니다.새 위치 스택을 만들려면 cmdlet의
Push-Location매개 변수를 사용합니다. 존재하지 않는 스택을 지정하면Push-Location스택을 만듭니다.위치 스택을 현재 위치 스택으로 만들려면 cmdlet의
Set-Location매개 변수를 사용합니다.
명명되지 않은 기본 위치 스택은 현재 위치 스택인 경우에만 완전히 액세스할 수 있습니다.
명명된 위치 스택을 현재 위치 스택으로 만드는 경우 더 이상 Push-Location 또는 Pop-Location cmdlet을 사용하여 기본 스택에서 항목을 추가하거나 가져오거나 이 cmdlet을 사용하여 명명되지 않은 스택의 위치를 표시할 수 없습니다. 명명되지 않은 스택을 현재 스택으로 만들려면 cmdlet의 Set-Location 매개 변수를 $null 값 또는 빈 문자열("")과 함께 사용합니다.