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

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

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

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


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

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


Есть вот такой код. Он сканирует папку на наличие в ней файлов содержащих в названии текст icon и и перемещает в папку icon.
а нужно что он брал переменные из текстового файла filelist.txt
icon
cursor
wallpaper
...
и помещал найденные файлы в создаваемые одноименные директории

Код: Выделить весь код
@echo off
 set fol=icon
 for %%i in (*%fol%*.*) do call:move "%%i" 
 goto:eof 
  
 :move 
 set /a folder+=1 
 md %fol% 
 move %1 %fol%

Отправлено: 13:41, 15-11-2012

 

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


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

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


разобрался
Код: Выделить весь код
@echo off

for /F "delims=" %%a in (F:\test\test\FileList.txt) do ( 
 md F:\test\test\"%%a"
 move %1 "*%%a*.*" F:\test\test\"%%a"
)
как вот теперь сделать чтоб пустые папки не создавал

Отправлено: 17:13, 15-11-2012 | #2



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

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


Ветеран


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

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


Цитата 929151:
как вот теперь сделать чтоб пустые папки не создавал »
Хотите обходной путь? Пусть создаёт. После
Цитата 929151:
Код: Выделить весь код
move %1 "*%%a*.*" F:\test\test\"%%a"
»
проверяйте наличие файлов в конечной папке, и, если она пуста — удаляйте её.
Это сообщение посчитали полезным следующие участники:

Отправлено: 17:28, 15-11-2012 | #3


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


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

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


сделал вот так
Код: Выделить весь код
@echo off
for /F "delims=" %%a in (F:\test\test\FileList.txt) do ( 
 md F:\test\test\"%%a"
 move /Y %1 "*%%a*.*" F:\test\test\"%%a"
)
for /d %%i in ("F:\test\test\*") do rd /q "%%i" 2>nul
работает, но жаль только не учитывает что имена файлов в папках могут совпадать при последующем перемещении.

Отправлено: 18:33, 15-11-2012 | #4


Ветеран


Contributor


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

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


Чтобы сразу не создавались пустые папки можно сделать так
Код: Выделить весь код
@echo off
Set Where=E:\Delete

for /F "delims=" %%a in (E:\Delete\FileList.txt) do (
	If Exist "%Where%\*%%a*.*" (
		md "E:\Delete\%%a" 2>nul
	 	move /Y "%Where%\*%%a*.*" "E:\Delete\%%a\" >nul 2>nul
	)
)

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

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

Отправлено: 01:56, 16-11-2012 | #5



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - Перемещение файлов по списку Arsenik77 Скриптовые языки администрирования Windows 4 04-12-2011 20:43
Прочие БД - Извлечение файлов по списку Aviator Программирование и базы данных 1 22-02-2011 02:44
CMD/BAT - [решено] Перемещение пользовательской директории. Vista + Se7en ASloup Скриптовые языки администрирования Windows 4 22-07-2010 23:06
CMD/BAT - [решено] перемещение каталогов по списку neprotiv Скриптовые языки администрирования Windows 4 02-03-2010 09:39
Перемещение по списку в Excel Evita Хочу все знать 3 16-03-2006 01:13




 
Переход