Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - помогите сделать батник копирования папки

Ответить
Настройки темы
CMD/BAT - помогите сделать батник копирования папки
siz siz вне форума

Новый участник


Сообщения: 1
Благодарности: 0

Профиль | Отправить PM | Цитировать


Изменения
Автор: siz
Дата: 30-09-2009
Нужно копировать папку с важными файлами из диска С:\ на D:\, потом после завершения копировал эту же папку с диска С:\ на комп локальной сети \\komp\. Нада сделать так чтобы с именем папки была дата. Заранее благодарен.

Отправлено: 06:10, 30-09-2009

 

Аватара для xctr

Старожил


Сообщения: 200
Благодарности: 16

Профиль | Отправить PM | Цитировать


xcopy "папка откуда копируйте" "папка куда копируйте" /y
sleep 5
xcopy "папка откуда копируйте" "путь к пк куда надо скопировать" /y

чтобы использовать sleep скачайте и скопируйте в C:\WINDOWS\system32

подробнее узнать о команде xcopy можно набрав в командной строке xcopy /?

п.с. пользуйтесь поиском по форуму такой вопрос задавался не один раз.

Отправлено: 10:58, 30-09-2009 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Пользователь


Сообщения: 144
Благодарности: 16

Профиль | Отправить PM | Цитировать


Вложения
Тип файла: zip extcopy.zip
(444 байт, 150 просмотров)

Смотрите прикрепленный файл

Пример вызова:
Код: Выделить весь код
extcopy.cmd c:\docs d:\docs \\server\archive\docs
В примере содержимое c:\docs будет скопировано в каталоги d:\docs-yyyymmdd и \\server\archive\docs-yyyymmdd

Удачи

Отправлено: 17:04, 30-09-2009 | #3


Ветеран


Contributor


Сообщения: 2710
Благодарности: 1686

Профиль | Отправить PM | Цитировать


Вот батник, который копирует указанную директорию (в переменной InDir) по двум указанным путям (в переменных Double1 и Double2), при этом добавляем впереди имени исходной директории дату. У меня в системе формат даты дд.мм.гггг. Я преобразую дату в строку ггггммдд чтобы легче сортировать при просмотре директории по имени.
Код: Выделить весь код
Set InDir="C:\Мои сцены 3D MAX"

Set Double1="D:"
Set Double2="\\Всякие Копии"   

rem Set DT=%Date%
Set DT=%Date:~6,4%%Date:~3,2%%Date:~0,2%

Call :CopyDir %InDir% %Double1% %Double2%


GoTo End


:CopyDir

Set Otkuda="%~1\*.*"

Set Kuda1=%~1
Set Kuda1="%~2\%DT%_%Kuda1:~3,1000%\"

Set Kuda2=%~1
Set Kuda2="%~3\%DT%_%Kuda2:~3,1000%\"

xcopy %Otkuda% %Kuda1% /Y /S
xcopy %Otkuda% %Kuda2% /Y /S


:End

Отправлено: 19:54, 03-10-2009 | #4


Ветеран


Сообщения: 623
Благодарности: 14

Профиль | Отправить PM | Цитировать


megaloman
а как еще в конце в RAR забить?

Отправлено: 08:23, 08-10-2009 | #5


Пользователь


Сообщения: 144
Благодарности: 16

Профиль | Отправить PM | Цитировать


Цитата seman:
а как еще в конце в RAR забить? »
В смысле? Нужно копии упаковывать в архив?

Отправлено: 10:44, 08-10-2009 | #6


Ветеран


Contributor


Сообщения: 2710
Благодарности: 1686

Профиль | Отправить PM | Цитировать


Не вижу смысла усложнять жизнь. Если надо упакованные копии, зачем копировать куда-то исходную директорию. Давайте сразу будем создавать где нужно архив. И быстрее и удобнее.
Код: Выделить весь код
Set InDir="C:\Всякая дребедень" 

Set Double1="D:\Всякая дребедень.Copy"
Set Double2="\\Всякие Копии\Всякая дребедень.Copy"   

rem Set DT=%Date%
Set DT=%Date:~6,4%%Date:~3,2%%Date:~0,2%

Call :CopyDir %InDir% %Double1% %Double2%


GoTo End


:CopyDir

Set Otkuda="%~1\*.*"


"%ProgramFiles%\Winrar\Winrar.exe" a -r "%~2\%DT%"  %Otkuda%
"%ProgramFiles%\Winrar\Winrar.exe" a -r "%~3\%DT%"  %Otkuda%


:End
В папках, созданных для копий, будет набор rar-файлов с именами, совпадающими с датой создания. Что еще нужно? Вместо второй упаковки исходной директории логично написать копирование первого созданного архива - быстрее получится.

copy "%~2\%DT%.rar" "%~3\"

Примечание - Я предположил, что WinRar установлен стандартным образом в систнмную папку \Program Files\Winrar\

-------
Даже самая сложная проблема обязательно имеет простое, лёгкое для понимания, неправильное решение. Каждое решение плодит новые проблемы.


Последний раз редактировалось megaloman, 08-10-2009 в 11:50. Причина: Дополнение


Отправлено: 11:16, 08-10-2009 | #7


Пользователь


Сообщения: 144
Благодарности: 16

Профиль | Отправить PM | Цитировать


Вложения
Тип файла: zip daily_pack.zip
(583 байт, 205 просмотров)

Вот мой скрипт для ежедневного копирования.
Архивчики раскладываются в дерево каталогов вида ГГГГ\ММ\, использую консольный 7zip.

Отправлено: 11:45, 08-10-2009 | #8



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - помогите сделать батник копирования папки

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - [решено] помагите написать батник для копирования папки robingut Скриптовые языки администрирования Windows 23 04-05-2016 11:22
CMD/BAT - [Решено] Написать батник для копирования одного файла во многие папки рекурсивно. Iodine Скриптовые языки администрирования Windows 5 20-05-2010 22:31
[решено] Как сделать,что б батник проверял число ? mitiya Автоматическая установка Windows 2000/XP/2003 27 28-01-2010 08:15
CMD/BAT - нужно сделать такой батник если возможно... God-of-Chaos Скриптовые языки администрирования Windows 0 16-09-2009 09:06
CMD/BAT - [решено] Батник подключающий общие папки (сетевые диски) Bullet-Avalon Скриптовые языки администрирования Windows 2 28-07-2009 15:29




 
Переход