Total Commander Forum Index Total Commander
Форум поддержки пользователей Total Commander
Сайты: Все о Total Commander | Totalcmd.net | Ghisler.com | RU.TCKB
 
 RulesRules   SearchSearch   FAQFAQ   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Single Post  Topic: Windows Script Host 
Author Message
Batya



PostPosted: Fri Apr 14, 2006 16:31    Post subject: Reply with quote

Вот подумал, что может кому-нить пригодится...
На старом форуме появилась задача по поиску и замене текста в выделенных файлах:
Quote:
1. выделяем файлы для редактирования
2. жмем сочетание клавиш (т.е. запускаем плагин) и в появившемся маленьком поле ввода пишем то, что нужно найти и заменить. Жмем ок.
3. в появившемся после этого окне пишем то, НА чТО надо заменить. Жмем ок.

Написал vbs-скрипт, использующий EmEditor (версия EmEditor-а - 4.13, не знаю, как на пятерке работать будет):
Code:
'==================================================================
' Поиск и замена строк в выделенных файлах в TC с помощью EmEditor

' В параметрах вызова из TC должно быть прописано:
' %L
'
' Ниже задайте правильный путь к EmEditor
'==================================================================

Dim Editor
'-------- Путь к EmEditor -----------------------
Editor = "d:\Program Files\EmEditor\emeditor.exe"
'------------------------------------------------

Dim WS, FSO, StreamFile, Find_String, Replace_String, Current_File, MsgBut
Set WS = WScript.CreateObject("WScript.Shell")
Set FSO = CreateObject("Scripting.FileSystemObject")
Set StreamFile = FSO.OpenTextFile(WScript.Arguments(0), 1)

Find_String = InputBox("Введите искомую строку", "Поиск и замена")
if Len(Find_String) = 0 then
 MsgBut = MsgBox("Не задана строка для поиска!", vbOKOnly + vbExclamation, "Поиск и замена")
 WScript.Quit()
End if
Replace_String = InputBox("Введите строку для замены", "Поиск и замена")

Do While Not StreamFile.AtEndOfStream
 Current_File = StreamFile.ReadLine
 WS.Run """" & Editor & """ /fc """ & Find_String & """ """ & Current_File & """ /rw """ & Replace_String & """"
Loop

StreamFile.Close
Set WS = Nothing
Set FSO = Nothing
Set StreamFile = Nothing
Wscript.Quit
View user's profile Send private message


Powered by phpBB © 2001, 2005 phpBB Group