如何获取批处理文件以将 .lnk 快捷方式复制到桌面

如何获取批处理文件以将 .lnk 快捷方式复制到桌面

当我尝试移动文件时,出现一条错误消息,提示找不到文件,我注意到即使我未选择“隐藏已知扩展名”,快捷方式文件也不会在文件夹视图中附加 .lnk。

cmd.exe dir 命令也显示与所写内容完全相同的文件。

如果我将 .lnk 添加到 Windows 资源管理器文件,我会得到 .lnk.lnk,但仍然找不到文件

IF NOT EXIST "%USERPROFILE%\Desktop\Remote Service Restarter.lnk" (
echo f | xcopy /f /y "Remote Service Restarter.lnk" "%DESKTOP%\Remote Service Restarter.lnk"
) ELSE (
del "Remote Service Restarter.lnk"
echo removing redundant installer file
)

有任何想法吗?

答案1

您可以在第二行尝试使用“%USERPROFILE%\Desktop”代替“%DESKTOP%”吗?

这里是否涉及文件夹重定向?(echo %DESKTOP% 给您什么?)

您可能需要从 %USERPROFILE% 访问,如果有

答案2

桌面路径有两个位置。一个是per user桌面文件夹,另一个是all users桌面文件夹。

该文件可能位于其他文件夹中,因此您可以在桌面上看到该文件,但批处理文件实际上找不到它。

地点如下:

  • %USERPROFILE%\Desktop
  • %PUBLIC%\Desktop

另外,请记住,%DESKTOP% 不是默认存在的环境值,在大多数系统中都不会存在。它实际上可能也不存在于您自己的系统中。使用上述 2 条路径保证可以在 Windows XP 及更高版本的任何系统上运行。

相关内容