
cd \가 내 드라이브의 루트로 이동하는 것을 확인했습니다.
하지만 내 컴퓨터에서 액세스할 수 있는 다른 드라이브도 있습니다.
연결할 수 있는 모든 드라이브를 나열하는 명령이 PowerShell에 있나요?
답변1
이것은 "드라이브"라고 부르는 것에 따라 다소 다릅니다. PowerShell에는 일반적인 로컬 또는 네트워크 매핑 볼륨을 나타내는 드라이브뿐만 아니라 별칭, 환경 변수, 함수, PowerShell 변수, 레지스트리 하이브 등과 같은 다른 개체를 보유하는 드라이브도 있습니다.
PowerShell에서 모든 "드라이브" 목록을 보려면 다음을 사용하세요.
Get-PSDrive
또는 내장 별칭을 사용할 수 있습니다.
gdr
Get-PSDrive
( 아래에 보이는 곳은 어디든 대체할 수 있습니다 gdr
.)
파일 시스템 드라이브(예: 로컬 또는 네트워크 매핑 볼륨 또는 미디어 베이)만 가져오려면 다음을 사용하십시오.
Get-PSDrive -PSProvider FileSystem
얻으려면단지로컬 드라이브 또는단지Get-PSDrive
하드 드라이브를 사용하여 필터링할 개체 출력에서 적절한 속성 또는 메서드를 찾을 수 없습니다 . 조금 후에 구글링해서 찾아낸TechNet의 Microsoft Get-PSDrive 설명서. 여기에는 사용 방법에 대한 세부 정보와 함께 Get-PSDrive
PowerShell에서 액세스할 수 있는 몇 가지 드라이브 열거 방법도 나열되어 있습니다. 제가 찾은 유용한 방법 중 하나는 .NET Framework의 System.IO.DriveInfo 클래스를 이용하는 것입니다.
PowerShell을 통해 실행 가능한 아래 명령은 로컬 하드 드라이브만 나열합니다.
[System.IO.DriveInfo]::getdrives() | Where-Object {$_.DriveType -eq 'Fixed'}
하드 드라이브뿐만 아니라 모든 로컬 드라이브를 포함하려면 다음을 사용하십시오.
[System.IO.DriveInfo]::getdrives() | Where-Object {$_.DriveType -ne 'Network'}
드라이브 문자만 보려면 Select-Object
다음과 같이 출력을 로 파이프하십시오.
[System.IO.DriveInfo]::getdrives() | Where-Object {$_.DriveType -ne 'Network'} | Select-Object -Property Name
Where-Object
및 Where-Object where` Select-Object
의 내장 별칭도 있습니다. 이는 실제로 선호도의 문제입니다.) System.IO.DriveInfo 클래스를 IO.DriveInfo로 단축할 수도 있습니다 ?
. 따라서 원하는 경우 마지막 명령을 다음과 같이 실행할 수 있습니다.select, respectively. (
is also usable as
[IO.DriveInfo]::getdrives() | ? {$_.DriveType -ne 'Network} | select -Property Name
물론 , Get-PSDrives
PowerShell을 통해 액세스할 수 있는 .NET 클래스 및 기타 다양한 PowerShell 바로 가기를 사용하여 수행할 수 있는 작업이 많이 있습니다. TechNet 및 유사 사이트에서 자세한 내용을 읽어보고 및 cmdlet을 사용하여 Get-Help
환경 Get-Command
에 더 익숙해지는 것이 좋습니다.
답변2
다음 명령을 사용하여 powershell
PC의 모든 드라이브를 나열하십시오.
gdr -PSProvider 'FileSystem'
또는
Get-PSDrive -PSProvider 'FileSystem'