当我尝试移动文件时,出现一条错误消息,提示找不到文件,我注意到即使我未选择“隐藏已知扩展名”,快捷方式文件也不会在文件夹视图中附加 .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 及更高版本的任何系统上运行。