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

Показать сообщение отдельно

Ветеран


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

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


ага, уже ответили, ну приложу свой вариант раз уже начал, хотя он похож на вариант megaloman, но как раз учитывал повторяемость файлов, т.е. должно быть минимум два заданных, допускается более 2х, но не менее, но эти 2 обязательно

"a.txt" и "b.txt" - если как минимум эти два файла будут в архиве, то все такие архивы будут сохранены в папку "C:\b_arch"

Код: Выделить весь код
@echo off
set "d_out=C:\b_arch"
set "exp=7z"
set "ar=%ProgramFiles%\7-Zip\7z.exe"
set "zf1=a.txt"& set "zf2=b.txt"

if not exist "%d_out%" md "%d_out%"
for /f "delims=" %%A in ('2^>nul dir /a-d/b "*.%exp%"') do (
 setlocal enabledelayedexpansion
  for /f "tokens=5*" %%a in ('"%ar%" l "%%A"^|findstr /c:" ....A "^|findstr /c:"%zf1%" /c:"%zf2%"') do set /a n+=1& set "a!n!=%%A"
  if not "!a2!"=="" >nul copy "!a2!" "%d_out%"
 endlocal
)
pause

Последний раз редактировалось alpap, 10-11-2017 в 00:06.


Отправлено: 23:58, 09-11-2017 | #8