PowerShell에는 다른 파일 시스템에 가상 파일 시스템을 제공 할 수있는 방법이 있습니까?

StackOverflow https://stackoverflow.com/questions/1165463

문제

맞춤형 PSDRIVE에 대한 지원을 쓸 수 있다는 것을 알고 있습니다. 그러나 이것들은 항상 파일 시스템의 근본입니다. VFS가 사용과 같은 파일 시스템의 임의의 노드에서 시작할 수있는 방법이 있다면 좋을 것입니다. Set-Location 아카이브 파일을 입력하고 마치 폴더 인 것처럼 사용합니다. (멀리있는 것과 비슷합니다).

이것을 달성 할 방법이 있습니까? 나는 그것을 올바르게하고 일하는 것이 약간의 노력이 될 것이지만, 현재 나는 그것이 가능한지 더 관심이있다. 조금도.

ETA : 내가 원하지 않는 것은 내가 입력 한 모든 아카이브에 대한 새로운 PSDRIVE이므로 다음은 실제로 내가 뒤 따르는 것이 아닙니다.

PS C:\Path> Invoke-Magic stuff.zip
PS C:\Path> Set-Location MyNewDrive:
PS MyNewDrive:> _

오히려

PS C:\Path> Set-Location stuff.zip
PS C:\Path\stuff.zip> _
도움이 되었습니까?

해결책

당신이 설명하는 것은 아카이브를 컨테이너 객체로 간주하는 파일 시스템 제공 업체입니다. 처럼 FileSystemProvider 봉인되어 있습니다. navigationcmdletprovider 그것은 당신의 마술을합니다.

다른 팁

확신하는. 실제로 스냅인 코드를 작성하지 않고도 이미 어느 정도이 작업을 수행 할 수 있습니다. 예를 들어:

New-PsDrive -Scope Global -Name MyMod -PSProvider FileSystem -Root (split-path $profile | join-path -child Modules)
dir MyMod:\

당신은 a 공급자, 여기 예입니다 SourcesAfe 제공자 (오래되었지만 여전히 관련이 있음)

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top