3

Я пытаюсь создать пакетный файл, чтобы создать сетевую папку на основе имени компьютера, а затем скопировать рабочий стол, Мои документы, Избранное из каждого профиля в этот общий ресурс. Таким образом, место назначения должно быть примерно таким: \\server\share\computername\profile name\Mydocuments и т.д.

Я могу создать computername dir. но ничего не копирует. Я попробовал это ....

@echo off
md \\servername\sharename\profile backups\%computername%
cd C:\Documents and Settings
xCopy "\%%\Desktop" \\servername\sharename\profile backups\%computername% "%computername%\%%\*.*" 

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

1 ответ1

0

Вы, кажется, пропускаете некоторые имена переменных.

В предоставленном коде: замените первый %% на %homepath% и замените второй на %username%

Поскольку %homepath% включает в себя часть «C:\documents and settings\», вам не нужно сначала переходить в этот каталог.

Также заключите в кавычки любые пути, которые содержат пробелы (или потенциально могут содержать пробелы).

Наконец, рассмотрите возможность использования ключей XCopy для копирования назначенных разрешений .

@echo off
md "\\servername\sharename\profile backups\%computername%"
xcopy "\%homepath%\Desktop" \\servername\sharename\profile backups\%computername% "%computername%\%username%\" /O /X /E /H /K

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .