Форум программистов, компьютерный форум, киберфорум
Наши страницы
Batch (CMD/BAT)
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
Onkel_ron
0 / 0 / 0
Регистрация: 14.02.2014
Сообщений: 2
1

Поиск файла в архиве и перемещение архива

17.02.2014, 15:24. Просмотров 669. Ответов 2
Метки нет (Все метки)

Добрый день!

Так или иначе в папке появляется файл с произвольным именем и расширением *.kvt (это архив).
В этот архив вложен файл *.txt имя которого кончается на "_20140217_001" или "_20140217_002" и т.д.(_текущая дата_номер по порядку).
Можно ли посредством командного языка и средствами командой строки ARJ (предпочтительнее) или 7zip, реализовать следующий сценарий:

Запускаем батник.
1) Он ищет среди всех архивов *.kvt вложение подобное "*_20140217_001.txt".
2) Из найденного архива копирует требуемое вложение в папку вида "20140217_in1" (дата в имени папки фиксирована, скажем сегодня)
3) И переносит найденный *kvt-архив в паку вида "20140217_in1", не трогая, при этом, остальные.

?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.02.2014, 15:24
Ответы с готовыми решениями:

Поиск в архиве и при совпадении его перемещение
Здравствуйте. Вот столкнулся с такой задачей. Приходит почта в виде архивов....

Поиск файла в архиве
Здраствуйте. Я сам пишу на делфях, а тут сестра попросила с лабой помоч, вот...

Поиск и перемещение файла
Доброго времени суток. Дано: на любом из дисков в любой директории...

Скрипт создания 7z архива: добавить дату к названию архива
Добрый день! Заранее извиняюсь если пишу не в той ветке форума. Есть скрипт:...

Создание папки по имени файла и перемещение файла в эту папку
Добрый день , Помогите пожалуйста с батником. У меня есть целая куча файлов...

2
Onkel_ron
0 / 0 / 0
Регистрация: 14.02.2014
Сообщений: 2
18.02.2014, 23:47  [ТС] 2
Нашел в этой теме подходящий код.

Bash
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
@echo off
setlocal enabledelayedexpansion
 
set "folder1=1"
set "folder2=2"
 
set "word1=График"
set "word2=wget"
 
 
for /f "delims=" %%a in ('dir /b /a-d "*.arj"') do (
    Arj.exe l "%%a" | >nul find /i "%word1%" && ((if not exist "%folder1%" md "%folder1%")& copy /y "%%a" "%folder1%\" >nul)
    Arj.exe l "%%a" | >nul find /i "%word2%" && ((if not exist "%folder2%" md "%folder2%")& copy /y "%%a" "%folder2%\" >nul)
)
 
pause
exit
Код обрабатывает только первый из найденных архивов. Попробовал зациклить обработку. Результат - один найденный архив.
Код находит не все файлы с указанными значениями, в word1.

Добавлено через 6 часов 13 минут
Bash
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
@echo off
setlocal enabledelayedexpansion
 
set "folder1=1"
set "folder2=2"
 
set "word1=001"
set "word2=002"
rem set "defaultfolder=полный путь до папки с файлами"
cd %defaultfolder%
for /f "delims=" %%a in ('dir /b /a-d "*.*"') do ( rem где "*.*" поиск по всем файлам в %defaultfolder%
    7z l "%%a" | >nul find /i "%word1%" && ((if not exist "%folder1%" md "%folder1%")& copy /y "%%a" "%folder1%\" >nul)
    7z l "%%a" | >nul find /i "%word2%" && ((if not exist "%folder2%" md "%folder2%")& copy /y "%%a" "%folder2%\" >nul)
)
rem 7z быстрее находит искомое.
rem arj долгий как черепаха.
pause
exit
Подправил код. Он обрабатывал один файл за цикл, из-за того, что в цикле for явно указывалось расширение проверяемых файлов.

Работает.
0
Red_Stalker
0 / 0 / 0
Регистрация: 02.11.2013
Сообщений: 19
19.02.2014, 02:18 3
А у меня этот код все еще отлично сортирует почту по вложениям )
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.02.2014, 02:18

Поиск установленной программы WinRAR и её запуск с выполнением определённой команды для распаковки архива
Здравствуйте, подскажите пожалуйста как распаковать zip или rar файл c...

Удаление определённого файла из архива 7-Zip или WinRAR
Здравствуйте, подскажите пожалуйста батник, который смог бы от имени...

Команда батника для запуска случайного файла из архива
У меня есть 10 текстовиков. Мне нужно из них сделать SFX архив с батником и...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru