web-dev-qa-db-fra.com

Comment donner des informations d'identification dans un script batch qui copie des fichiers vers un emplacement réseau?

L'environnement est Windows Web Server 2008, et j'essaie simplement de copier un dossier plein de fichiers vers un emplacement réseau (un dossier réseau de sauvegarde géré). Voici mon fichier .bat, exécuté dans le dossier contenant mes fichiers .bat:

copy *.bak \\networklocation\*.bak
pause

cependant \\ networklocation nécessite un nom d'utilisateur x et un mot de passe y, donc l'exécution du script donne:

Logon failure: unknown user name or bad password.

Je n'arrive pas à trouver un moyen de fournir mes informations d'identification. J'ai essayé de créer une tâche planifiée et de modifier les options de sécurité, mais cela ne semble que vous permettre d'utiliser des informations d'identification pertinentes pour la machine (c'est-à-dire que j'essaie de mettre le nom d'utilisateur x et qu'il ne le trouve pas).

Comment exécuter ce script avec toutes les autorisations appropriées?

Solution:

Net Use \\networklocation\sharefolder password /USER:username
copy \*.bak \\networklocation\sharefolder\*.bak
37
Zac

Essayez d'utiliser le Net Use commande dans votre script pour mapper le partage en premier, car vous pouvez lui fournir des informations d'identification. Ensuite, votre commande de copie doit utiliser ces informations d'identification.

Net Use \\<network-location>\<some-share>\ password /USER:username
41
Max

Vous pouvez également mapper le partage sur un lecteur local comme suit:

Net Use X: "\\servername\share" /user:morgan password
5
Morgan Williams