Войти

Показать полную графическую версию : [решено] Пакетный поиск


ruslaw
02-02-2014, 16:32
Имеется главная папка (напр. - "D:\myFolder\") с различными файлами и субпапками разной степени вложения.
Имеется список ФРАГМЕНТОВ имен файлов.
Как сделать bat(vbs/js)-файл который создавал бы отчет в виде csv-файла где первой строкой шел бы этот список, а второй список полных имен (полных адресов) этих файлов, напр.:

политической; D:\myFolder\folderK\Начала политической экономии.pdf; D:\myFolder\folderM\"Элементы политической экономии.pdf

Введение; D:\myFolder\folderW\Введение в специальность.pdf; D:\myFolder\folderX\Введение в анализ.djvu
....................................
Т.е. речь идет о пакетном поиске с отчетом.
Используется кириллица. Регистр не важен.

Iska
02-02-2014, 17:53
ruslaw, может быть всё-таки «первым элементом строки» и «последующими элементами строки», а не «первой» и «второй» строкой?

Попробуйте так:
@echo off
setlocal enableextensions enabledelayedexpansion

set sRootFolder=E:\Песочница
set aFragments="введение" "005" "qww" "qwerty" "zxasqw"

>"Out.csv" (for %%i in (%aFragments%) do (
<nul set /p "sVar=%%~i"

for /f "usebackq delims=" %%j in (
`2^>nul dir /b /s /a:-d "%sRootFolder%\*%%~i*.*"`
) do (
<nul set /p "sVar=;"%%~j""
)
echo.
))

endlocal
exit /b 0

ruslaw
02-02-2014, 23:12
Отлично! Все работает.
Спасибо огромное!!!




© OSzone.net 2001-2012