Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   замена текста в нескольких файлах (http://forum.oszone.net/showthread.php?t=287413)

Alexander_88 03-09-2014 11:28 2397744

замена текста в нескольких файлах
 
Здравствуйте. Подскажите можно ли заменить одну фразу на другую в нескольких перечисленных мной файлах. Файлы с расширением bat и txt ,не большие.
А результат сохранить в этих же файлах , в которых заменял

Elven 03-09-2014 12:08 2397768

пусть в меня кинут тапком за офтопик, но все же порекомендую воспользоваться Notepad++. Имхо проще и быстрее.

Iska 03-09-2014 12:56 2397787

Цитата:

Цитата Alexander_88
Подскажите можно ли заменить одну фразу на другую в нескольких перечисленных мной файлах. Файлы с расширением bat и txt ,не большие. »

Нет. Можно только разобрать файлы, сделать замену в строках, сделать вывод в новый файл, заменить старый файл новым. Потому очень многие детали реализации зависят от того, а) какие именно это файлы, б) что и на что конкретно меняем.

Alexander_88 03-09-2014 13:01 2397792

ясно, спасибо, тогда попробую через программку

Georgio 03-09-2014 13:04 2397795

Код:

@echo off

set "word_or_frase=Bye!"
set "replacement=Hello!"

for %%i in (
"example_1.txt"
"example_2.txt"
"example_3.txt"
 ) do (
 echo WScript.Echo^(Replace^(WScript.CreateObject^("Scripting.FileSystemObject"^).OpenTextFile^(%%i^).ReadAll^(^),"%word_or_frase%","%replacement%"^)^)>.vbs
 cscript //nologo .vbs| clip
 mshta "vbscript:CreateObject("Scripting.FileSystemObject").GetStandardStream(1).Write(ClipboardData.GetData("text"))&Close()"| more>%%i
 )
del .vbs

exit /b


Elven 03-09-2014 13:20 2397806

Georgio, сразу вспомнилось светлое время студенчества, когда поспорили кто на C++ скомпилирует наименьший вариант "Hello world!", выйграл вызвавший ASM.

Iska 03-09-2014 16:41 2397909

Elven, надо было TP брать — у меня в паре случаев скомпилированный код выходил один в один с «ручным» ассемблером ;).

Alexander_88 03-09-2014 18:33 2397959

Georgio, спасибо, работает, проверил :yes:


Время: 01:01.

Время: 01:01.
© OSzone.net 2001-