我有一个很棒的大脚本,它完全依赖于PUSHD。但是当我输入pushd \\server1\dir1
时突然得到:
C:\Documents and Settings\userNameHere>pushd \\server1\dir1
' '
CMD does not support UNC paths as current directories.
好的,我知道CMD不支持UNC路径。这就是为什么我使用PUSHD。当我搜索此消息时,我发现很多帖子都说“当您遇到有关UNC路径的消息时,应使用PUSHD!”。糟糕,我正在遇到该消息并正在使用PUSHD。
我尝试使用
CMD /E:ON
是因为PUSHD仅在启用命令扩展时才处于活动状态。结果相同。我查看是否以某种方式无法使用驱动器号(因为PUSHD从Z:开始并向后查找驱动器号)。不。
我尝试在c:\ dir(
cd c:\
然后pushd \\server1\dir1
)启动cmd。我确认驱动器在那里,并且可以通过Windows资源管理器访问它。
现在我没主意了。
推送参考:Link
最佳答案
据我所知,对此的答案是,如果您位于Y:在映射的驱动器中,则推送将不起作用。因此,您需要执行net use y: /delete
(或其他驱动器号),然后使用pushd
映射驱动器。我已映射所有驱动器号,除了Z和A。也许Z是保留的?我不知道。
我的错误是检查Z:是否可用(未映射)。显然,如果您已将所有内容映射到Y :,包括Y :,那么它将不会映射Z :。不知道为什么。
关于batch-file - 什么会导致PUSHD失败?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2411305/