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

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

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

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


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

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


Здравствуйте уважаемые гуру.

Появился такой вопрос: существует ли аналог команды "move" который работает с подкаталогами также, как команда "xcopy"?
Поясню: есть необходимость перемещения и переименование папки "путь1\а_" (которая содержит файлы и каталоги) в "путь2\a", важное замечание - "путь2\" уже содержит папку "a".
Очень долго пользовался сочетанием:

xcopy путь1 путь2
rd путь1

но данное сочетание перестало удовлетворять в связи с увеличивающимся размером и количеством файлов в папке а_. Просто копирование и удаление в сумме занимает большее время чем перемещение, и это стало существенно заметно по вышеописанным причинам, а команда "move" либо переносит одну папку (но не заменяет, если такая уже имеется), либо переносит содержимое папки, но не подкаталоги.
Варианты с ROBOCOPY не предлагать так как батник используется на разных осях и ставить соответствующие Resource Kit'ы например на ХРюшу ради батника смысла не вижу.

В общем подытожу: есть необходимость слияния 2х папок (всего их содержимого), не используя операторы копирования\удаления а именно ПЕРЕНОСА, существует ли такая возможность?

Отправлено: 19:19, 17-08-2013

 

Googler


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

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


Цитата i3anan:
есть необходимость слияния 2х папок (всего их содержимого), не используя операторы копирования\удаления а именно ПЕРЕНОСА, существует ли такая возможность? »
как вариант - перенести пофайлово и потом удалить исходный каталог:
Код: Выделить весь код
@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
Благодарности: 0

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


Хм, интересное решение, спасибо!

Отправлено: 22:42, 17-08-2013 | #3


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


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

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


Подскажите пожалуйста, что означает эта строка в вышеизложенном решении:

Цитата amel27:
::------------------------ »

Отправлено: 10:00, 25-08-2013 | #4



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
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




 
Переход