Você pode adicionar isso ao seu arquivo Microsoft.PowerShell_profile.ps1
. O comando cd
funcionará conforme desejado.
remove-item alias:cd -force
function cd($target)
{
if($target.EndsWith(".lnk"))
{
$sh = new-object -com wscript.shell
$fullpath = resolve-path $target
$targetpath = $sh.CreateShortcut($fullpath).TargetPath
set-location $targetpath
}
else {
set-location $target
}
}