|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Перемещение подкаталогов |
|
CMD/BAT - [решено] Перемещение подкаталогов
|
Новый участник Сообщения: 3 |
Здравствуйте уважаемые гуру.
Появился такой вопрос: существует ли аналог команды "move" который работает с подкаталогами также, как команда "xcopy"? Поясню: есть необходимость перемещения и переименование папки "путь1\а_" (которая содержит файлы и каталоги) в "путь2\a", важное замечание - "путь2\" уже содержит папку "a". Очень долго пользовался сочетанием: xcopy путь1 путь2 rd путь1 но данное сочетание перестало удовлетворять в связи с увеличивающимся размером и количеством файлов в папке а_. Просто копирование и удаление в сумме занимает большее время чем перемещение, и это стало существенно заметно по вышеописанным причинам, а команда "move" либо переносит одну папку (но не заменяет, если такая уже имеется), либо переносит содержимое папки, но не подкаталоги. Варианты с ROBOCOPY не предлагать так как батник используется на разных осях и ставить соответствующие Resource Kit'ы например на ХРюшу ради батника смысла не вижу. В общем подытожу: есть необходимость слияния 2х папок (всего их содержимого), не используя операторы копирования\удаления а именно ПЕРЕНОСА, существует ли такая возможность? |
|
Отправлено: 19:19, 17-08-2013 |
Googler Сообщения: 3665
|
Профиль | Отправить PM | Цитировать Цитата i3anan:
@echo off call:MoveDir "Путь1\Каталог1" "Путь2\Каталог2" Exit/B :MoveDir Dir_From Dir_To ::------------------------ setlocal DisableDelayedExpansion for /f "delims=" %%a in ('dir/b/s/a-d "%~1\*"2^>nul') do ( set "F1=%%~a" set "P1=%%~dpa" call set "F2=%%F1:%~1=%~2%%" call set "P2=%%P1:%~1=%~2%%" setlocal EnableDelayedExpansion if not exist "!P2!" md "!P2!" move/-y "!F1!" "!F2!" endlocal ) dir/b/s/a-d "%~1\*"2>nul|find/v ""||rd/s/q "%~1" endlocal GoTo:EOF |
|
Отправлено: 20:18, 17-08-2013 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Новый участник Сообщения: 3
|
Профиль | Отправить PM | Цитировать Хм, интересное решение, спасибо!
|
Отправлено: 22:42, 17-08-2013 | #3 |
Новый участник Сообщения: 3
|
Профиль | Отправить PM | Цитировать Подскажите пожалуйста, что означает эта строка в вышеизложенном решении:
Цитата amel27:
|
|
Отправлено: 10:00, 25-08-2013 | #4 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
CMD/BAT - [решено] Определение количества подкаталогов | kelevara | Скриптовые языки администрирования Windows | 6 | 27-04-2013 12:30 | |
VBS/WSH/JS - Копирование файлов из каталогов и подкаталогов с сохранением структуры подкаталогов | spke | Скриптовые языки администрирования Windows | 0 | 10-04-2013 23:58 | |
CMD/BAT - удаление подкаталогов и файлов | Miales | Скриптовые языки администрирования Windows | 1 | 11-09-2012 21:45 | |
CMD/BAT - копирование файлов из подкаталогов | bojfriend | Скриптовые языки администрирования Windows | 8 | 31-08-2011 01:49 | |
CMD/BAT - [решено] перемещение по маске из подкаталогов в корень | shadowbat | Скриптовые языки администрирования Windows | 4 | 24-05-2010 20:18 |
|