批处理文件在我的桌面上正常工作,但不在虚拟桌面上。为什么?

继Check if a file exists in zip archive,我有处理目录中的某些文件的批处理文件,我用这行里面:批处理文件在我的桌面上正常工作,但不在虚拟桌面上。为什么?

call zipjs.bat list -source "C:\myZip.zip" -flat yes|find /i "filename" && (

echo file exists

color

)|| (

echo file does not exist

)

我在同一个目录zipjs.bat我的批处理文件:

桌面 - > MyBatch.bat

桌面 - > zipjs.bat

MyBatch.bat调用zipjs.bat,并在我的机器上正常工作。

问题:

我已经到了一个虚拟机来测试我的代码的访问,这是一个Windows桌面操作系统上运行在其上的一些软件。没有什么花哨。在那里,我还把myBatch.batzipjs.bat放在同一个目录下(桌面)。但是,每当我运行myBatch时,它都会提示“zipjs.bat不是可识别的命令”。这就像myBatch找不到zipjs.bat。可能是什么问题?

回答:

如果蝙蝠以管理员权限启动,它将在system32文件夹中启动。尝试在文件开始时设置cd /d "%~dp0"(cd命令更改工作目录,并且/d开关在需要在不同驱动器之间跳转时)。

%0参数是这个批处理文件(如果不使用shift命令),于是有了%~dp0你的驱动器和path to the file(无文件名)。

以上是 批处理文件在我的桌面上正常工作,但不在虚拟桌面上。为什么? 的全部内容, 来源链接: utcz.com/qa/265926.html

回到顶部