我有一个批处理文件,需要连接远程服务器目录,然后在映射驱动器中的文件上运行可执行文件。
这就是我目前设置批处理文件的方式:
@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
设置的映射驱动器中?
由于某种原因,当这个批处理文件运行时没有任何反应,但如果我手动映射驱动器并将其传递到那里,它就可以正常工作。
答案 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