我有一个批处理脚本,需要与 Windows XP(暂时)和 Windows 7 一起工作。该脚本还将链接复制到 Windows 桌面。
copy /Y path\to\the\link.lnk %ALLUSERSPROFILE%\Desktop\link.lnk
这在 Windows XP 上有效,但在 Windows 7 上无效。%ALLUSERSPROFILE%\Desktop 是一个连接点,即使使用管理员帐户执行命令时,我也收到“拒绝访问”的提示。我以为连接点是用来将我转发到正确位置(在本例中为 %PUBLIC%\Desktop)的,但似乎不起作用。
有什么方法可以制作兼容 XP/7 的命令行?
答案1
我在 Windows XP 和 Windows 7 上都使用它来设置要使用的路径的变量。在此代码中,AUDESKTOP
设置取决于它在哪个操作系统上运行。
IF DEFINED PUBLIC (SET AUDESKTOP=%PUBLIC%\Desktop) ELSE (SET AUDESKTOP=%ALLUSERSPROFILE%\Desktop)
然后在命令行中像这样调用该变量;
复制 /Y“path\to\the\link.lnk” “%AUDESKTOP%\link.lnk”
至于为什么它在 Windows 7 中出错,请确保路径周围有引号。如果仍然不起作用,请尝试run as administrator
。