如果通过计划任务调用BAT文件,则无法将文件复制到UNC目标

我有一个bat文件将文件从当前机器复制到映射的networking驱动器(一行xcopy命令)。

它适用于我的RDP到服务器。 然而,当我作为一个计划任务运行,并将其configuration为在我login的同一用户下运行,它不起作用,并给出错误0x4。

有什么办法可以做到这一点?

我也尝试dsynchronize,它在我单击同步时工作。 当我运行它作为服务相同的问题。

我能弄明白。 以下批处理文件在调度程序下工作,即使是本地系统帐户:

net use m: \\server\share /U:server\user password xcopy C:\source m: /E /Y 

它每次映射一个网络驱动器,然后复制到该驱动器

可以将文件复制到UNC路径而不映射为网络驱动器。 试试用引号设置UNC路径。

 copy * "\\server\share" 

没有引号,我得到了在Windows7命令行上运行的“语法错误”。

我有类似的问题,我想将文件从服务器复制到数百个其他服务器,而无需将远程驱动器映射到本地PC。 我没有足够的驱动器号将数百台远程机器映射到本地PC上! 我不能只映射远程驱动器和复制。

我以为我可以使用复制,xcopy或robocopy,并指定我的信誉复制命令。 但是没有一个复制命令有任何选项来向远程系统提供凭证。

感谢上面的帖子,我能够创建一个小批处理文件,我只是循环通过我的主机,并保持重新使用一个驱动器映射为我的所有主机。

这是我的批处理文件…

 echo @off for /F %%j in (pchostslist1.txt) do ( net use z:\\%%j\c$ /user:domain\myusername mypassword mkdir \\%%j\c$\tmp\mynewdir xcopy c:\anyfile.txt \\%%j\c$\tmp\mynewdir net use z: /delete ) 

我有一个类似的问题,而不是使用净​​使用,我只需要将密码存储为计划任务的一部分。 你会注意到,它表示只有打勾时才能访问本地资源。

存储密码

谁映射网络驱动器? 你是使用映射的名称,而不是底层的UNC本地路径? 因为它听起来像映射的驱动器是在您的登录脚本中设置的,如果您未登录,该映射驱动器不会运行。因此,在计划的任务中,您拥有UNC路径的正确凭据,但没有映射的驱动器号。