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

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

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

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


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

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


Здравствуйте, прошу помощи в создании батника.

В одной папке имеется множество папок с файлами, нужно определенное кол-во (допустим 500 или лучше рендомом от 400 до 500) папок раскидать в новые директории (Название значение не имеет, можно цифровые).

Пример: в одной папке 10.000 папок, нужно рэндомно все эти 10.000 переместить в, допустим, 21 папку.

Отправлено: 14:43, 25-03-2012

 

Ветеран


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

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


Практического применения сему не вижу.

Отправлено: 20:29, 25-03-2012 | #2



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

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


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


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

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


А реализовать такое все же можно или нельзя?

Отправлено: 20:42, 25-03-2012 | #3


Ветеран


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

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


Можно. Но не зная цели — не вижу смысла заниматься реализацией сего.
Это сообщение посчитали полезным следующие участники:

Отправлено: 23:01, 25-03-2012 | #4


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


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

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


Цель - упростить работу с папками. Было бы удобней, если все папки будут более компактно расположены в других папках.

Отправлено: 05:06, 26-03-2012 | #5


Ветеран


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

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


Это не цель. Не вижу смысла один хаос менять на другой.

Расскажите про область применения, в которой требуется 10000 папок в одной папке.

Отправлено: 05:48, 26-03-2012 | #6


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


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

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


У меня на внешнем жестком диске есть папка, в которую наскачивал множество чего. Хочу все это обработать, вручуню просмотреть, допустим в день я могу просмотреть 200 папок. Эксплорер очень долго открывает все. Нужно все раскидать по папкам, чтобы удобней стало. Знал бы в какой папке был и что делал.

Отправлено: 06:52, 26-03-2012 | #7


Ветеран


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

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


Цитата krbmoney:
Эксплорер очень долго открывает все. »
Первое открытие в Проводнике папки с таким количеством папок, действительно, занимает некоторое, не слишком большое время задержки. Последующие открытия (в том же сеансе) — нет. Открытие папки в Far Manager'е не вызвало задержек и с первого раза. В Total Commander время задержки примерно соответствует Проводнику, но — при каждом входе в папку.

Как-то так:
Код: Выделить весь код
@echo off
setlocal enableextensions enabledelayedexpansion

set sSourceFolder=H:\003
set sDestFolder=H:\004

set /a lGroup = 400

set /a lCount = 0
set /a lNewFolder = 0

for /d %%i in ("%sSourceFolder%\*.*") do (
	set /a lCount += 1
	set /a lMod = lCount %% lGroup
	
	if !lMod! equ 1 (
		set /a lNewFolder += 1
		set sTempValue=0000!lNewFolder!
		set sNewFolder=%sDestFolder%\!sTempValue:~-5!
		md "!sNewFolder!" && echo Create folder [!sNewFolder!]
	)
	move "%%i" "!sNewFolder!" && echo   Move folder [%%i]
)

endlocal
exit /b 0
где:

* «sSourceFolder» — исходная папка, откуда будут браться папки;
* «sDestFolder» — целевая папка, куда будут переноситься папки по группам из папки «sSourceFolder»;
* «lGroup» — число папок для переноса в одной группе.

Скрипт рассчитан на создание до 10000 групп. Новые папки, куда будет производиться перенос, именуются цифрами: «00001», «00002» и т.д.
Это сообщение посчитали полезным следующие участники:

Отправлено: 08:14, 26-03-2012 | #8


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


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

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


Круто, спасибо!

Отправлено: 09:01, 26-03-2012 | #9



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - [решено] Копирование папки с исходного места и удаление одноименной папки на конечном месте cool_tiger Скриптовые языки администрирования Windows 3 11-03-2012 13:58
Разное - какие файлы и папки я могу смело удалить из папки windows fyt Microsoft Windows 2000/XP 6 05-01-2012 18:14
CMD/BAT - [решено] Найти папкИ и переместить их по указанному пути... djvall Скриптовые языки администрирования Windows 1 02-02-2011 08:58
Разное - Как удалить профильные папки из Личной Папки без последствий? Котяр Microsoft Windows 7 0 28-11-2009 20:36
Как скрыть некоторые папки внутри расшаренной папки? Farkhod Microsoft Windows 2000/XP 6 15-04-2006 17:20




 
Переход