2017-09-18 19 views
1

powershell에서 cd dir을 사용하여 dir 디렉토리로 이동하십시오.powershell에서 바로 가기를 따르는 방법

dir이 디렉토리의 바로 가기 인 경우 cd dircd dir.lnk은 모두 디렉토리가 존재하지 않는다는 오류가 발생합니다.

그럼 바로 가기는 어떻게해야합니까?

는 (리눅스 cd dir에서 단지을 작동합니다. Windows에서 내가 아무 생각이 없어 한) 쉘 COM 객체를 사용

+0

Windows 바로 가기 실제로 [이진 파일 (https://msdn.microsoft.com/en-us/library/dd871305.aspx) 명시 적 분석 또는 [COM 액세스]를 필요로하는 (HTTPS ://stackoverflow.com/q/9414152). NTFS는 (리눅스의 Ext fs처럼) 심볼릭 링크도 지원하지만, 거의 사용되지는 않습니다. – vonPryz

답변

3

을, 당신은 대상 경로를 얻을 수 있습니다 거기에서, 당신이 원하는 일을 할. Get-ShortcutTargetPath

function Get-ShortcutTargetPath($fileName) { 
    $sh = New-Object -COM WScript.Shell 
    $targetPath = $sh.CreateShortcut($fileName).TargetPath 
    [System.Runtime.Interopservices.Marshal]::ReleaseComObject($sh) | Out-Null 
    return $targetPath 
} 


$file = 'Filename.lnk' 
$TargetPath = Get-shortcutTargetPath($file) 
Set-Location $TargetPath