Randow
05-05-2015, 19:22
Привет, форумчане!
Очень нужна ваша помощь. Задача моя, в принципе, видна из темы - я веду поиск файлов в директории, не затрагивая внутренние папки, по содержимому, и найденные файлы должна скопировать в отдельную папку (в данном случае просто создаю папку с названием запрашиваемого текста). Вот, все получается кроме последнего шага - происходит кривое копирование, т.к. копируется только последний файл из тех, что были найдены.
Вот код:
@echo on
set /p mesto="vvedite put' k papke: "
set /P str=Vvedite stroku:
findstr /M /C:%str% %mesto%*.txt
set /p vopr="peremestit' naydenniye fayli v odnoimennuyu papku? (Y-da/N-net):"
if %vopr%==Y (
mkdir %mesto%%str%
for /f "Delims=" %%i in ('findstr /C:%str% %mesto%*.txt') do ( copy %mesto%"%%~ni.txt" "%mesto%%str%")
) else ( echo %str% )
pause
И, собственно, запуск:
124935
Заранее спасибо!
Очень нужна ваша помощь. Задача моя, в принципе, видна из темы - я веду поиск файлов в директории, не затрагивая внутренние папки, по содержимому, и найденные файлы должна скопировать в отдельную папку (в данном случае просто создаю папку с названием запрашиваемого текста). Вот, все получается кроме последнего шага - происходит кривое копирование, т.к. копируется только последний файл из тех, что были найдены.
Вот код:
@echo on
set /p mesto="vvedite put' k papke: "
set /P str=Vvedite stroku:
findstr /M /C:%str% %mesto%*.txt
set /p vopr="peremestit' naydenniye fayli v odnoimennuyu papku? (Y-da/N-net):"
if %vopr%==Y (
mkdir %mesto%%str%
for /f "Delims=" %%i in ('findstr /C:%str% %mesto%*.txt') do ( copy %mesto%"%%~ni.txt" "%mesto%%str%")
) else ( echo %str% )
pause
И, собственно, запуск:
124935
Заранее спасибо!