Как дать учетные данные в пакетном скрипте, который копирует файлы в сетевое расположение? - PullRequest
37 голосов
/ 04 октября 2010

Среда - Windows Web Server 2008, и я просто пытаюсь скопировать папку, полную файлов, в сетевое расположение (сетевая папка управляемого резервного копирования). Вот мой файл .bat, работающий в папке с моими файлами .bat:

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

однако \\ networklocation требуется имя пользователя x и пароль y , поэтому запуск сценария дает:

Logon failure: unknown user name or bad password.

Я не могу найти способ предоставить свои учетные данные. Я попытался создать запланированное задание и изменить параметры безопасности, но это только позволяет вам использовать учетные данные, относящиеся к компьютеру (т. Е. Я пытаюсь ввести имя пользователя x , и он не может его найти).

Как запустить этот скрипт со всеми необходимыми разрешениями?

Решение:

net use \\networklocation\sharefolder password /USER:username
copy \*.bak \\networklocation\sharefolder\*.bak

Ответы [ 2 ]

41 голосов
/ 04 октября 2010

Попробуйте использовать команду net use в своем скрипте, чтобы сначала отобразить общий ресурс, так как вы можете указать его учетные данные.Затем ваша команда копирования должна использовать эти учетные данные.

net use \\<network-location>\<some-share>\ password /USER:username
4 голосов
/ 01 мая 2015

Вы также можете назначить общий ресурс на локальный диск следующим образом:

net use X: "\\servername\share" /user:morgan password
...