Robocopy usará el mecanismo de autenticación estándar de las ventanas.
Así que probablemente necesite conectarse a los servidores con las credenciales apropiadas antes de ejecutar el comando robocopy.
Puede usar net use
para hacer esto y puede ponerlo en una secuencia de comandos por lotes.
Tenga en cuenta que a Windows no le gusta que se conecte al mismo servidor con dos conjuntos diferentes de credenciales (por lo que no puede copiar desde y al mismo servidor como usuarios diferentes). Pero eso no es lo que parece que necesitas.
Algo como esto:
net use \\server1\g$ /user:domain1\user1 *
net use \\server2\g$ /user:domain2\user2 *
robocopy \\server1\G$\testdir\%3 \\server2\g$\uploads
Notas:
- Se trata de utilizar conexiones 'sin dispositivos' que no serán recreados en el arranque (y no aparecerá con una letra de unidad en Windows explorador).
- El asterisco al final del comando net use significa solicitar una contraseña, puede codificar la contraseña (o puede obtenerla como un parámetro para la secuencia de comandos).
- Puede valer la pena leer en
net use
para asegurarse de que hace lo que necesita.
Puede probablemente también eliminar la conexión de red a los servidores a través de este (no he probado esto con una conexión sin dispositivos):
net use \\server1\g$ /delete
net use \\server2\g$ /delete
Esta pregunta puede haber sido técnicamente fuera de tema, pero salvó mi tocino! Recomendaría serverfault como el lugar apropiado para esta pregunta, pero cualquiera, desde administradores de sistemas, desarrolladores y usuarios avanzados, puede beneficiarse de ello, y no todos los que necesitan esta respuesta son los destinatarios de SF. – Thomas