![]() |
Поиск, замена текста в *.txt и вывод результата в другой каталог
Здравствуйте. Помогите создать батник который производит поиск в папке файлов *.txt. В них ищем, допустим, "не готов" и меняем на "отправлен", и сохраняем результат в другую папку с тем же именем, если есть такой файл с таким именем - заменяем его без подтверждения... понятия не имею как сделать это. В тексте могут встречаться символы [] # *** . Помогите плз.
Пример до Не готов hghgjhjgjg# 35464747лалалл апаррпопопо [9f8d7d6d5s4s] hghghgj*****kgkgk Не готов hghgjhjgjg# 3876556564лалалл апаррпопопо [6н7у8вл8] hghghgj*****ыспыва после отправлен hghgjhjgjg# 35464747лалалл апаррпопопо [9f8d7d6d5s4s] hghghgj*****kgkgk отправлен hghgjhjgjg# 3876556564лалалл апаррпопопо [6н7у8вл8] hghghgj*****ыспыва |
Цитата:
|
Код:
Код:
@echo off . Предупреждение: 1) пакетный файл с данным кодом ни в коем случае не сохраняйте в кодировке OEM-866; 2) в случае замены строки, содержащей буквы русского алфавита, чётко соблюдайте регистр этих букв при задании переменной "original" (например, если в Вашем тексте надо заменить фразу "Не готов", то надо писать именно "Не готов", а не "не готов". |
Цитата:
|
Цитата:
|
Огромное спасибо. Все работает.
Насчет кодировки все понял, меняем (Не готов - Not ready и отправлен - has been sent) Еще просьба - можно сделать поиск и во вложеных папках, и как то сделать чтобы переодически все повторялось(раз в час или полчаса)? |
Цитата:
|
Цитата:
Можно. Добавьте ключ "/S" для команды "FINDSTR": Код:
^>.tmp cmd/v/c echo.!original!^& 2^>nul findstr/msilg:.tmp "%source%\%pattern%"^& del .tmp Цитата:
Зациклить тоже можно. Но лучше делайте, как коллега Iska советует. |
Всё получилось.Спасибо.
|
Время: 13:31. |
Время: 13:31.
© OSzone.net 2001-