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

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

Ответить
Настройки темы
CMD/BAT - CMD Перемещение каталогов с длинными именами.

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


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

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


Здравствуйте всем!

Помогите пожалуйста с созданием BAT-ника для автоматизации.

На работе один сервер каждый день генерирует папку с файлами (Info_User data_2018-1-9-8-2-17_ImmdTask12-Compressed) в 8:00 утра.
Пароль и логин сервера, простым юзерам небезопасно. Нужно чтобы один компьютер перемещал ежедневные генерированные папки с определенным именем с сервера на свою директорию.
Но так как данное имя папки ежедневно меняется структура * в move не работает. При копирование с XCOPY копируется все данные включая и старые папки сгенерированные в прошлые дни.
Хотелось бы чтобы перемещались папки а не копировались, как указал ниже?

Xcopy /E /S /I /Y \\10.1.0.1\d$\data\Info* D:\test\info_%date%
Xcopy /E /S /I /Y \\10.1.0.2\d$\data\Info* D:\test\info_%date%

Отправлено: 14:58, 11-01-2018

 

Аватара для Elven

Ветеран


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

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


Код: Выделить весь код
robocopy /?

Отправлено: 15:32, 11-01-2018 | #2



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

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


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


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

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


Цитата Elven:
Код:
robocopy /? »
Если не будет вам сложно, можно чуток по подробнее для новичка по CMD так как у robocopy много функций, затеряться можно?

Отправлено: 15:42, 18-01-2018 | #3


Ветеран


Contributor


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

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


,deluxe9999,
Цитата deluxe9999:
Нужно чтобы один компьютер перемещал ежедневные генерированные папки с определенным именем с сервера на свою директорию. »
Зачем это нужно, для хранения или для текущей работы?
Цитата deluxe9999:
сервер каждый день генерирует папку с файлами (Info_User data_2018-1-9-8-2-17_ImmdTask12-Compressed) »
Что обозначают цифры в имени папки?
Цитата deluxe9999:
перемещал ежедневные генерированные папки с определенным именем с сервера на свою директорию. »
Что Вы имеете ввиду под определённым?
И, кстати,
Цитата deluxe9999:
При копирование с XCOPY копируется все данные включая и старые папки сгенерированные в прошлые дни. »
У xcopy есть ключ /d, который позволяет пропустить копирование старых файлов, но при этом необходимо копировать файлы в одну и ту же папку, либо явно указывать дату
Цитата:
/D:m-d-y - Копирование файлов, измененных не ранее указанной даты. Если дата не указана, заменяются только конечные файлы, более старые, чем исходные.

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


Последний раз редактировалось megaloman, 18-01-2018 в 17:00.

Это сообщение посчитали полезным следующие участники:

Отправлено: 16:18, 18-01-2018 | #4


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


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

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


Цитата megaloman:
Зачем это нужно, для хранения или для текущей работы?
Цитата deluxe9999: »
Добрый день!
Нужны для хранения данных.

а) Цифры в папках это даты которое при ежедневном генерации данных сервер создает.
б) Под определённым имею ввиду то, что сервер создает папки с лишними информация ми, нужно после перемещения примерно называлась "papka_%data%"

Отправлено: 15:28, 19-01-2018 | #5


Ветеран


Contributor


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

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


Цитата deluxe9999:
Нужны для хранения данных. »
Почему бы не использовать архиватор? Существенная экономия места даже при низком уровне сжатия.
Цитата deluxe9999:
Цифры в папках это даты которое при ежедневном генерации данных сервер создает. »
Сегодня 19.01.2018. Как называется папка которую надо архивировать?

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


Последний раз редактировалось megaloman, 19-01-2018 в 16:08.


Отправлено: 15:57, 19-01-2018 | #6


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


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

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


Цитата megaloman:
Нужны для хранения данных. »
Почему бы не использовать архиватор? Существенная экономия места даже при низком уровне сжатия. »
Было бы круто с архивированием папку под именем %VLR_дата%.

Отправлено: 16:03, 19-01-2018 | #7


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


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

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


папка под именем VLR

Отправлено: 16:12, 19-01-2018 | #8


Ветеран


Contributor


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

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


deluxe9999
Архиватор RAR
Код: Выделить весь код
@Echo Off
cls

Set "BoxIn=Z:\Box_In\VLR"
Set "BoxArc=Z:\Box_Arc"
Set "ArcName=VLR_"
Set "Arc=%ProgramFiles%\WinRar\WinRar.exe"

FOR /F "tokens=2 delims==." %%d in ('WMIC OS GET LOCALDATETIME /VALUE') DO SET "Tdate=%%d"
Set "Tdate=%Tdate:~0,8%"

"%Arc%" a -r -m1 -df -ta%Tdate%000000 -ag%Tdate% "%BoxArc%\%ArcName%" "%BoxIn%\*.*"
Вы не расшифровали имя папки
Цитата deluxe9999:
сервер каждый день генерирует папку с файлами (Info_User data_2018-1-9-8-2-17_ImmdTask12-Compressed) »
На мои непристойные домогательства Вы ответили
Цитата deluxe9999:
папка под именем VLR »
Вам бы
Цитата deluxe9999:
Хотелось бы чтобы перемещались папки а не копировались »
В моём скрипте применяю архиватор Rar. За удаление архивированных файлов отвечает выделенный ключ -df, если этого не нужно, удалите этот ключ.
Укажите свои пути к архивируемой папке, архивной папке и путь к архиватору, если он отличается от стандартного.
Скрипт архивирует в указанной папке все файлы за сегодня, заархивированные файлы удаляются (если Вы не передумаете).
Имя архива имеет вид VLR_ГГГГММДД
XCopy
Просто копирование за сегодня
Код: Выделить весь код
@Echo Off
cls

Set "BoxIn=Z:\Box_In\VLR"
Set "BoxArc=Z:\Box_Arc"
Set "ArcName=VLR_"

FOR /F "tokens=2 delims==." %%d in ('WMIC OS GET LOCALDATETIME /VALUE') DO SET "Tdate=%%d"
Set "Tdate=%Tdate:~0,8%"
Set "DXcopy=%TDate:~4,2%-%TDate:~6,2%-%TDate:~0,4%"

Pushd "%BoxIn%"
Xcopy /S /I /Y /F /D:%DXcopy% *.* "%BoxArc%\%ArcName%%TDate%"
Popd
Копирование за сегодня с удалением исходных файлов
Код: Выделить весь код
@Echo Off
cls

Set "BoxIn=Z:\Box_In\VLR"
Set "BoxArc=Z:\Box_Arc"
Set "ArcName=VLR_"

FOR /F "tokens=2 delims==." %%d in ('WMIC OS GET LOCALDATETIME /VALUE') DO SET "Tdate=%%d"
Set "Tdate=%Tdate:~0,8%"
Set "DXcopy=%TDate:~4,2%-%TDate:~6,2%-%TDate:~0,4%"

Pushd "%BoxIn%"

FOR /F "usebackq tokens=1,2 delims=>" %%i In (`xcopy /S /I /Y /F /D:%DXcopy% *.* "%BoxArc%\%ArcName%%TDate%"`) DO Call :DelCopy "%%i" "%%j"

Popd 
GoTo :Eof

:DelCopy
	If "%~2"=="" GoTo :Eof
	Set "File1=%~1" 
	Set "File1=%File1:~0,-2%"
	Set "File2=%~2" 
	Set "File2=%File2:~1,9999%"
	If Exist "%File2%" Del "%File1%"
GoTo :Eof
Пустые папки не рискнул удалять, не зная задачи подробно

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


Последний раз редактировалось megaloman, 20-01-2018 в 18:07.

Это сообщение посчитали полезным следующие участники:

Отправлено: 17:25, 19-01-2018 | #9


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


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

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


Спасибо большое за Ваш отклик. Так как суббота и воскресенье не рабочий день. Попробую сегодня и дам Вам свой результат.

Отправлено: 08:40, 22-01-2018 | #10



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - Перемещение файлов в папки с аналогичными именами londondron Скриптовые языки администрирования Windows 12 22-03-2017 15:22
CMD/BAT - Перемещение файлов с иерархией каталогов, по дате Yah0nt Скриптовые языки администрирования Windows 4 22-11-2016 12:52
CMD/BAT - [решено] скопировать несколько файлов с длинными кириллическими именами Nun-Nun Скриптовые языки администрирования Windows 3 31-08-2010 21:00
CMD/BAT - [решено] перемещение каталогов по списку neprotiv Скриптовые языки администрирования Windows 4 02-03-2010 09:39
[решено] Перемещение разрешений общих каталогов при миграция домена SuperBoss Microsoft Windows NT/2000/2003 6 17-09-2003 06:32




 
Переход