Windows PUSHD UNC路径

时间:2014-10-22 16:06:44

标签: windows batch-file cmd

我有一个批处理文件,需要连接远程服务器目录,然后在映射驱动器中的文件上运行可执行文件。

这就是我目前设置批处理文件的方式:

@echo off
pushd \\oma-entfs-004\APS\wwwroot\tuition\
c:\PDFtk\bin\pdftk.exe uploads/Educational_Assistance_Request_Form_North_America.pdf fill_form uploads/1413993009.fdf output uploads/x.pdf need_appearances
popd

我认为上传/应该知道它在pushd设置的映射驱动器中?

由于某种原因,当这个批处理文件运行时没有任何反应,但如果我手动映射驱动器并将其传递到那里,它就可以正常工作。

3 个答案:

答案 0 :(得分:1)

@echo off
net use X: \\oma-entfs-004\APS
pushd X:\wwwroot\tuition\
c:\PDFtk\bin\pdftk.exe uploads/Educational_Assistance_Request_Form_North_America.pdf fill_form uploads/1413993009.fdf output uploads/x.pdf need_appearances
popd

映射是否需要用户/密码?

According to this pushd应支持UNC(与CD不同):

  

UNC网络路径当指定UNC路径时,PUSHD将创建一个临时驱动器映射,然后将使用该新驱动器。暂时的   驱动器号按反向字母顺序分配,所以如果Z:是   免费它将首先使用。

我对localhost的测试工作正常。

答案 1 :(得分:0)

\\serenity\c$>

我通过此命令将其作为当前目录。

C:\Users\User>start /d \\serenity\c$ cmd /k

并设置此注册表项

HKEY_CURRENT_USER\Software\Microsoft\Command Processor

DisableUNCCheck = DWord = 1

所以也许这些可能有效

[改为正斜杠改为反斜杠]

c:\PDFtk\bin\pdftk.exe \\oma-entfs-004\APS\wwwroot\tuition\uploads\Educational_Assistance_Request_Form_North_America.pdf fill_form uploads/1413993009.fdf output uploads/x.pdf need_appearances

start /d \\oma-entfs-004\APS\wwwroot\tuition\ cmd /k c:\PDFtk\bin\pdftk.exe  uploads\Educational_Assistance_Request_Form_North_America.pdf fill_form uploads/1413993009.fdf output uploads/x.pdf need_appearances

要记录,请将echo更改为echo on并运行批处理,如cmd /k c:\somefolder\batch.bat>log.txt

答案 2 :(得分:-1)

Windows CMD不能具有作为网络路径的当前目录。完全停止。

您应该重写脚本以使用完整路径,而不是引用当前目录。

如果不可能,则必须使用NET USE

映射驱动器号