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

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

Ответить
Настройки темы
CMD/BAT - Копирование файлов содержащих в имени -210-

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


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

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


Здравствуйте
помогите написать батник который будет копировать файлы расширения *.mp3 и содержащие в имени -210- в другой каталог с сохранением структуры папок
На форму наткнулся на подобную задачу, но приложенный бат файл не решает полностью проблему
Код: Выделить весь код
set DIR=D:\common
set TXT=D:\210.txt
set DST=D:\210

pushd "%DIR%" && ( for /f "delims=" %%a in (
'dir/s/b/a-d *.mp3^|findstr/g:"%TXT%"') do copy/-y "%%a" "%DST%"
)
заранее спасибо всем

Отправлено: 13:39, 11-12-2013

 

Ветеран


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

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


навскидку так пойдет?

Код: Выделить весь код
cd /d d:\common

for /f "delims=*" %%i in ('dir /b /a-d /s  *.mp3') do (attrib -a "%%i" & echo %%i |find "-210-" && attrib +a "%%i")
xcopy /e /a /i *.mp3 d:\210

-------
консольный клиент telegram для Windows: www.elapser.info

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

Отправлено: 15:04, 11-12-2013 | #2



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

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


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


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

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


Опиум, все работает, можно еще узнать , если вдруг понадобиться искать по нескольким значениям , например -210- или -211- как это правильно реализовать?

Последний раз редактировалось jestergrid, 12-12-2013 в 10:20.


Отправлено: 07:05, 12-12-2013 | #3


Ветеран


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

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


для 211 можно написать дополнительную инструкцию for

-------
консольный клиент telegram для Windows: www.elapser.info


Отправлено: 14:46, 12-12-2013 | #4


Ветеран


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

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


Проще использовать «findstr.exe /c:"-210-" /c:"-211-"» вместо «find.exe».
Это сообщение посчитали полезным следующие участники:

Отправлено: 15:12, 12-12-2013 | #5


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


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

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


Цитата Iska:
Проще использовать «findstr.exe /c:"-210-" /c:"-211-"» вместо «find.exe». »
Можно по подробней, изучал основы программирования, но с батниками не работал, как правильно использовать findstr?
Буду признателен за подробные комментарии

Отправлено: 05:50, 13-12-2013 | #6


Ветеран


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

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


Заменить «find "-210-"» на «findstr.exe /c:"-210-" /c:"-211-"».

Отправлено: 06:43, 13-12-2013 | #7


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


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

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


set DIR=D:\NEW_FTP\Dialog\common
set TXT=D:\NEW_FTP\Dialog\txt.txt
set DST=D:\NEW_FTP\Dialog\admin\

pushd "%DIR%" && ( for /f "delims=" %%a in (
'dir/s/b/a-d *.mp3^|findstr/g:"%TXT%"') do xcopy /s /e /y "%%a" "%DST%"
)

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

Отправлено: 13:18, 13-12-2013 | #8


Ветеран


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

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


jestergrid, аллё, ты сделал чтото своё.
Не вижу в твоем примере моего решения, где xcopy запускается отдельно, а не в теле цикла.

-------
консольный клиент telegram для Windows: www.elapser.info


Отправлено: 17:27, 18-12-2013 | #9



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - [решено] Удаление файлов в папке и подпапках, содержащих определенную строку hron66 Скриптовые языки администрирования Windows 12 20-04-2023 14:20
удаление папок, содержащих определенные типы файлов jupiter1976 AutoIt 1 22-04-2013 23:39
CMD/BAT - Копирование имени файлов в 1 файл Kalyai Скриптовые языки администрирования Windows 0 25-07-2012 12:44
CMD/BAT - [решено] Перемещение файлов, содержащих дату в названии. Майклс Скриптовые языки администрирования Windows 4 27-07-2010 15:34
CMD/BAT - Удаление старых файлов по имени файлов Bиктор Скриптовые языки администрирования Windows 1 19-04-2010 03:37




 
Переход