6

我有一个包含快捷方式文件的子目录,假设它是“shortcut.lnk”。并且此项目指向其他位置。在 Windows 资源管理器中单击它时,会弹出目标子目录。

如何使用 cmd.exe 处理该项目?如何使用 cmd.exe 遵循该快捷方式?

我可能不想添加任何第三方软件,但出于可移植性原因,我想坚持使用 Windows 标准工具解决这个问题。

4

1 回答 1

3

好的旧 VBS 似乎是一个明显简单、简短和板载解决方案的关键:

@echo off
Set Shortcut=%~1

echo set WshShell = WScript.CreateObject("WScript.Shell")>DecodeShortCut.vbs
echo set Lnk = WshShell.CreateShortcut(WScript.Arguments.Unnamed(0))>>DecodeShortCut.vbs
echo wscript.Echo Lnk.TargetPath>>DecodeShortCut.vbs

set vbscript=cscript //nologo DecodeShortCut.vbs
For /f "delims=" %%T in ( ' %vbscript% "%Shortcut%" ' ) do set target=%%T

del DecodeShortCut.vbs

Echo Shortcut %shortcut%
Echo Target   "%target%"
于 2015-08-31T09:15:08.037 回答