![]() |
Поиск с помощью Bat ника
Диски есть файлы, с помощью батника надо искать определенной слова в файлах и все файлы содержащий этот слова скопировать на другой каталог!
Благодарю оказавших помощь! |
Код:
#Powershell script. |
Спасибо за поддержку но мне надо bat ник!
Я организовал поиск проблема с копированием файла... |
muqanna,
Код:
@echo off Слова "qwerty", "monday" и "tomorrow" Копирует с проверкой на имя в "D:\Some Folder" |
Foreigner, Спасибо щя проверим!
|
Foreigner, Не! пишет что не удалось найти указанного файла... Я смотрел кода
Цитата:
|
muqanna:
Цитата:
Выдает пути в 866, в случае если названия файлов или путь к ним содержат кириллицу. Предлагаю вариант с использованием grep: Код:
@echo off |
Цитата:
C:\Temp\1>1 grep: C:\Temp\1\1\*: No such file or directory Переменная среды f_ не определена Я с grepам не работал? Дальше что делать? |
Исправил, попробуйте:
Код:
@echo off |
|
Цитата:
|
Цитата:
Это: 1) Сетевого диска не правильно видеть! На компе D:\test без проблем работает, указываю сетевой диск, он его принимает без буквы на пример x:\test, а он принимает его как \test! 2) Цикл выполняется не полностью, допустим там 5 файла, а он находит в 4-х и копирует 4 файла!(из 600 файлов он пропустил 7 файлов!) -------------------------- @echo on setlocal set "from=d:\Temp\1" set "to=d:\Temp\2" set "words=test" 2>nul md "%to%" for /f "tokens=2* delims=:" %%i in (' findstr /s %words% %from%\*.* ') do call:copy "%%i" goto:eof :copy set "file=%~nx1" set "cnt=0" :check set /a cnt+=1 if not exist "%to%\%file%" ( copy %1 "%to%\%file%" ) else ( set "file=%~n1(%cnt%)%~x1" goto:check ) |
Время: 23:32. |
Время: 23:32.
© OSzone.net 2001-