如何使用robocopy复制不同域上的目录

sam*_*sam 34 dns teamcity copy robocopy

我想将目录(abc)从domain1/user1复制到domain2/user1.任何想法如何做到这一点.例如robocopy

robocopy \\server1\G$\testdir\%3 \\server2\g$\uploads
Run Code Online (Sandbox Code Playgroud)

两者都在不同的领域

Gre*_*HNZ 59

Robocopy将使用标准的Windows身份验证机制.

因此,在发出robocopy命令之前,您可能需要使用适当的凭据连接到服务器.

您可以使用它net use来执行此操作,您可以将其放在批处理脚本中.

请注意,Windows不希望您使用两组不同的凭据连接到同一服务器(因此您无法从不同用户复制到同一服务器).但这不是你需要的样子.

像这样的东西:

net use \\server1\g$ /user:domain1\user1 * 
net use \\server2\g$ /user:domain2\user2 *
robocopy \\server1\G$\testdir\%3 \\server2\g$\uploads
Run Code Online (Sandbox Code Playgroud)

笔记:

  • 这是使用"无设备"连接,在启动时不会重新创建(并且不会在Windows资源管理器中显示驱动器号).
  • net use命令末尾的星号表示提示输入密码,您可以在其中硬编码密码(或将其作为脚本的参数).
  • 可能值得一读,net use以确保它能满足您的需求.

您也可以使用此方法删除与服务器的网络连接(我没有尝试使用无设备连接):

net use \\server1\g$ /delete
net use \\server2\g$ /delete
Run Code Online (Sandbox Code Playgroud)

  • 这正是我让 Jenkins 复制到远程网络共享所需要的。非常感谢! (3认同)