Get-PSDrive
현재 세션의 드라이브를 가져옵니다.
구문
Get-PSDrive
[[-Name] <String[]>]
[-Scope <String>]
[-PSProvider <String[]>]
[<CommonParameters>]
Get-PSDrive
[-LiteralName] <String[]>
[-Scope <String>]
[-PSProvider <String[]>]
[<CommonParameters>]
Description
cmdlet은 Get-PSDrive
현재 세션의 드라이브를 가져옵니다. 특정 드라이브를 가져오거나 세션의 모든 드라이브를 가져올 수 있습니다.
이 cmdlet은 다음과 같은 유형의 드라이브를 가져옵니다.
- 네트워크 공유에 매핑된 드라이브를 포함하여 컴퓨터의 Windows 논리 드라이브입니다.
- PowerShell 공급자(예: Certificate:, Function:, Alias: drives) 및 HKLM: 및 HKCU: Windows PowerShell 레지스트리 공급자가 노출하는 드라이브에 의해 노출되는 드라이브입니다.
- New-PSDrive cmdlet을 사용하여 만든 세션 지정 임시 드라이브 및 영구 매핑된 네트워크 드라이브입니다.
Windows PowerShell 3.0부터 cmdlet의 New-PSDrive
Persist 매개 변수는 로컬 컴퓨터에 저장되고 다른 세션에서 사용할 수 있는 매핑된 네트워크 드라이브를 만들 수 있습니다. 자세한 내용은 New-PSDrive를 참조하세요.
또한 Windows PowerShell 3.0부터 외부 드라이브가 컴퓨터에 연결되면 Windows PowerShell은 새 드라이브를 나타내는 파일 시스템에 PSDrive를 자동으로 추가합니다. Windows PowerShell을 다시 시작하지 않아도 됩니다. 마찬가지로 컴퓨터에서 외부 드라이브의 연결이 끊어지면 Windows PowerShell은 제거된 드라이브를 나타내는 PSDrive를 자동으로 삭제합니다.
예제
예제 1: 현재 세션에서 드라이브 가져오기
PS C:\> Get-PSDrive
Name Used (GB) Free (GB) Provider Root
---- --------- --------- -------- ----
Alias Alias
C 202.06 23718.91 FileSystem C:\
Cert Certificate \
D 1211.06 123642.32 FileSystem D:\
Env Environment
Function Function
HKCU Registry HKEY_CURRENT_USER
HKLM Registry HKEY_LOCAL_MACHINE
Variable Variable
이 명령은 현재 세션에서 드라이브를 가져옵니다.
출력은 하드 드라이브(C:), CD-ROM 드라이브(D:) 및 Windows PowerShell 공급자(별칭:, Cert:, Env:, Function:, HKCU:, HKLM:, Variable:)에서 노출하는 드라이브를 보여 줍니다.
예제 2: 컴퓨터에서 드라이브 가져오기
PS C:\foo> Get-PSDrive D
Name Used (GB) Free (GB) Provider Root
---- --------- --------- -------- ----
D 1211.06 123642.32 FileSystem D:\
이 명령은 컴퓨터에서 D: 드라이브를 가져옵니다. 여기서는 명령의 드라이브 문자 다음에 콜론이 붙는 형태입니다.
예제 3: Windows PowerShell 파일 시스템 공급자가 지원하는 모든 드라이브 가져오기
PS C:\> Get-PSDrive -PSProvider FileSystem
Name Used (GB) Free (GB) Provider Root
---- --------- --------- -------- ----
A A:\
C 202.06 23718.91 FileSystem C:\
D 1211.06 123642.32 FileSystem D:\
G 202.06 710.91 FileSystem \\Music\GratefulDead
이 명령은 Windows PowerShell FileSystem 공급자가 지원하는 모든 드라이브를 가져옵니다. 여기에는 New-PSDrive cmdlet을 사용하여 만든 고정 드라이브, 논리 파티션, 매핑된 네트워크 드라이브 및 임시 드라이브가 포함됩니다.
예제 4: 드라이브가 Windows PowerShell 드라이브 이름으로 사용되고 있는지 확인
if (Get-PSDrive X -ErrorAction SilentlyContinue) {
Write-Host 'The X: drive is already in use.'
} else {
New-PSDrive -Name X -PSProvider Registry -Root HKLM:\SOFTWARE
}
이 명령은 X 드라이브가 이미 Windows PowerShell 드라이브 이름으로 사용되고 있는지 확인합니다.
그렇지 않은 경우 명령은 cmdlet을 New-PSDrive
사용하여 HKLM:\SOFTWARE 레지스트리 키에 매핑되는 임시 드라이브를 만듭니다.
예제 5: 파일 시스템 드라이브 유형 비교
PS C:\> Get-PSDrive -PSProvider FileSystem
Name Used (GB) Free (GB) Provider Root
---- --------- --------- -------- ----
A A:\
C 202.06 23718.91 FileSystem C:\
D 1211.06 123642.32 FileSystem D:\
G 202.06 710.91 FileSystem \\Music\GratefulDead
X Registry HKLM:\Network
PS C:\> net use
New connections will be remembered.
Status Local Remote Network
-------------------------------------------------------------------------------
OK G: \\Server01\Public Microsoft Windows Network
PS C:\> [System.IO.DriveInfo]::GetDrives() | Format-Table
Name DriveType DriveFormat IsReady AvailableFreeSpace TotalFreeSpace TotalSize RootDirectory VolumeLabel
---- --------- ----------- ------- ------------------ -------------- --------- ------------- -----------
A:\ Network False A:\
C:\ Fixed NTFS True 771920580608 771920580608 988877418496 C:\ Windows
D:\ Fixed NTFS True 689684144128 689684144128 1990045179904 D:\ Big Drive
E:\ CDRom False E:\
G:\ Network NTFS True 69120000 69120000 104853504 G:\ GratefulDead
PS N:\> Get-CimInstance -Class Win32_LogicalDisk
DeviceID DriveType ProviderName VolumeName Size FreeSpace
-------- --------- ------------ ---------- ---- ---------
A: 4
C: 3 Windows 988877418496 771926069248
D: 3 Big! 1990045179904 689684144128
E: 5
G: 4 \\Music\GratefulDead 988877418496 771926069248
PS C:\> Get-CimInstance -Class Win32_NetworkConnection
LocalName RemoteName ConnectionState Status
--------- ---------- --------------- ------
G: \\Music\GratefulDead Connected OK
이 예제에서는 표시되는 Get-PSDrive
파일 시스템 드라이브의 형식을 다른 메서드를 사용하여 표시되는 드라이브와 비교합니다. 이 예제에서는 Windows PowerShell에서 드라이브를 표시하는 다양한 방법을 보여 줍니다. New-PSDrive cmdlet을 사용하여 만든 세션별 드라이브는 Windows PowerShell에서만 액세스할 수 있음을 보여 줍니다.
첫 번째 명령은 세션의 모든 파일 시스템 드라이브를 가져오는 데 사용합니다 Get-PSDrive
. 여기에는 고정 드라이브(C: 및 D:), Persist 매개 변수를 사용하여 만든 매핑된 네트워크 드라이브(G:) 및 Persist 매개 변수 New-PSDrive
없이 사용하여 New-PSDrive
만든 PowerShell 드라이브(T:)가 포함됩니다.
net use 명령은 Windows 매핑된 네트워크 드라이브를 표시합니다. 이 경우 G 드라이브만 표시합니다. 에서 만든 New-PSDrive
X: 드라이브는 표시되지 않습니다. G: 드라이브도 \\Music\GratefulDead에 매핑되어 있음을 보여줍니다.
세 번째 명령은 Microsoft .NET Framework System.IO.DriveInfo 클래스의 GetDrives 메서드를 사용합니다. 이 명령은 드라이브 G:를 포함하여 Windows 파일 시스템 드라이브를 가져오지만 New-PSDrive
.
네 번째 명령은 cmdlet을 Get-CimInstance
사용하여 Win32_LogicalDisk 클래스의 인스턴스를 가져옵니다. A:, C:, D:, E:, G: 드라이브는 반환하지만 New-PSDrive
.
마지막 명령은 cmdlet을 Get-CimInstance
사용하여 Win32_NetworkConnection 클래스의 인스턴스를 표시합니다. net use와 마찬가지로. 이 속성은 .에서 만든 New-PSDrive
영구 G: 드라이브만 반환합니다.
매개 변수
-LiteralName
드라이브의 이름을 지정합니다.
LiteralName의 값은 입력된 대로 정확하게 사용됩니다. 와일드카드로 해석되는 문자는 없습니다. 이름에 이스케이프 문자가 포함된 경우 작은따옴표로 묶습니다. 작은따옴표는 Windows PowerShell에 문자를 이스케이프 시퀀스로 해석하지 않도록 지시합니다.
형식: | String[] |
Position: | 0 |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | True |
와일드카드 문자 허용: | False |
-Name
문자열 배열로 이 cmdlet이 작업에 가져오는 드라이브의 이름 또는 이름을 지정합니다.
콜론(:
)이 없는 드라이브 이름 또는 문자를 입력합니다.
형식: | String[] |
Position: | 0 |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | True |
와일드카드 문자 허용: | False |
-PSProvider
문자열 배열로 Windows PowerShell 공급자를 지정합니다. 이 cmdlet은 이 공급자가 지원하는 드라이브만 가져옵니다. FileSystem, Registry 또는 Certificate와 같은 공급자의 이름을 입력합니다.
형식: | String[] |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | True |
와일드카드 문자 허용: | False |
-Scope
이 cmdlet이 드라이브를 가져오는 범위를 지정합니다.
이 매개 변수에 허용되는 값은 다음과 같습니다.
- 전역
- Local
- 스크립트
- 현재 범위에 상대적인 숫자입니다(범위 수를 0부터 0까지, 여기서 0은 현재 범위이고 1은 부모입니다). "로컬"이 기본값입니다.
자세한 내용은 about_Scopes 참조하세요.
형식: | String |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | True |
와일드카드 문자 허용: | False |
-UseTransaction
활성 트랜잭션에 명령을 포함합니다. 이 매개 변수는 트랜잭션이 진행 중인 경우에만 유효합니다. 자세한 내용은 about_Transactions 참조하세요.
형식: | SwitchParameter |
별칭: | usetx |
Position: | Named |
Default value: | False |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
입력
None
개체를 이 cmdlet으로 파이프할 수 없습니다.
출력
이 cmdlet은 세션의 드라이브를 나타내는 개체를 반환합니다.
참고
Windows PowerShell에는 다음 별칭이 포함됩니다.Get-PSDrive
gdr
이 cmdlet은 모든 공급자가 노출하는 데이터를 사용하도록 설계되었습니다. 세션에서 사용할 수 있는 공급자를 나열하려면 cmdlet을
Get-PSProvider
사용합니다. 자세한 내용은 about_Providers 참조하세요.New-PSDrive cmdlet의 Persist 매개 변수를 사용하여 만든 매핑된 네트워크 드라이브는 사용자 계정과 관련이 있습니다. 관리자 권한으로 실행 옵션 또는 다른 사용자의 자격 증명으로 시작하는 세션에서 만든 매핑된 네트워크 드라이브는 명시적 자격 증명이나 현재 사용자의 자격 증명 없이 시작된 세션에서 표시되지 않습니다.
관련 링크
PowerShell