Поиск слова в файлах CMD
Добрый день, подскажите пожалуйста, нужен скрипт для поиска файлов в которых есть определенное слово( не в названии файла) , файлы в формате doc, docx. поиск нужен на сетевом диске во всех подкаталогах, при нахождении совпадения, файл перемещается на другой диск. Нашел похожий скрипт, подскажите что дописать нужно чтоб искал во всех подкаталогах, пока эта версия ищет только в заданной папке...
Код:
@echo off
SetLocal EnableExtensions
::Задайте папку, в которой искать файлы
set src=C:\test\
::Задайте маску для искомых файлов
set mask=*.DOCX
::Задайте искомую фразу
set word=привет
set word1=пока
set dd=%DATE:~0,2%
set mm=%DATE:~3,2%
set yyyy=%DATE:~6,4%
set datus=%yyyy%%mm%%dd%
::Задайте расположение папки, в которую копировать найденные файлы
set dest=C:\1\
for /f "delims=" %%a in ('dir /b /a-d "%src%\%mask%"') do (
for %%A IN (%word%) DO (
>nul find "%%A" < "%src%\%%~a" && move /y "%src%\%%~a" "%dest%\" >nul 2>nul
)
)
pause
|
Цитата:
Цитата Romannn1
файлы в формате doc, docx »
|
чистый cmd ни с архивами ни с двоичными файлами не работает на предмет поиска в них или разбора.
|
greg zakharov |
26-09-2019 20:01 2889733 |
alpap, бинарный .doc можно развинтить через fc, но там придется искать последовательность байт, ну и следует учитывать ограничения самого fc; что же до .docx можно также использовать fc или (сейчас прибегут форумные холуи некоторых персов и будут доказывать обратное) 7zip в купе с xmlstarlet (но это уже стороннее ПО), но если речь о WSL или PowerShell, который можно сгибридить с cmd, то все возможно.
|
«Имя, сестра, имя!» А то нещщитово. :lol:
WSH?
|
Время: 17:34.
© OSzone.net 2001-