Ilyansk
  Junior Member | Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору ой, чтой-то опоздал я с ответом...   Mgrom   Тут конечно нужен батник   у меня есть батник собирающий в архив из указанных мест DOC и XLS имеющие встроенные VBA программы. Привожу его здесь. Ищется словосочетание module=    Код: @echo off   setlocal ENABLEDELAYEDEXPANSION   set "places=C:,D:,E:,F:,Z:\bin,Z:\home"   echo Collecting  all VBA files from !places! ...   echo.   set "out=c:\vba_list"   if exist !out! del !out!   for /F "tokens=* delims=," %%Z in ("%places%") do call :work %%Z   set pt=%0   echo Starting archeving ...   rar u -ep3 -inul %pt:~0,-16%\all_VBA @!out!   goto :eof      :work   if "%1"=="" goto :eof   for /F "tokens=* delims=`" %%a in ('findstr /s /i /m /c:"module=" %1\*.xls %1\*.doc') do echo %%a >> !out!   echo place %1 done...   shift   goto :work  |      Он перебирает диски и указанные папки, запуская в каждом из них findstr, который сам умеет "шарить" по поддиректориям. Строки, возвращенные findstr'ом разбираются    строкой    or /F "tokens=* delims=`" %%a in ('findstr /s /i /m /c:"module=" %1\*.xls %1\*.doc') do echo %%a >> !out!   которая формирует список файлов в переменной out.   замените places= и строку module= в findstr на нужные и будет искать что надо и где ; так же поможет findstr /?, for /?   Ай, Вам же копировать надо! Хм... Щас...   после RAR u ...   поставьте   RAR e -ep -inul %pt:~0,-16%\all_VBA *.* <путь куда копировать>   и у Вас будет архивная копия скопированных файлов. Если это излишне, то правтся место do echo %%a >> !out! на copy "%%a" <путь куда копировать>   из файлов с однаковыми именами останутся последние найденные   Успехов |   Всего записей: 70 | Зарегистр. 27-07-2006 | Отправлено:  12:44 10-02-2009  | Исправлено: Ilyansk,   13:23 10-02-2009    |  
  |