Страница 23 из 27

Добавлено: Ср янв 02, 2013 00:14
LonerD
Flasher
Спасибо.

ReplaceInFiles.vbs

Добавлено: Вт мар 19, 2013 20:19
iG0R
Имеется следующий скрипт ReplaceInFiles.vbs со страницы №4 этого топика. http://forum.wincmd.ru/viewtopic.php?p=14843
Подскажите, как осуществить замену искомого текста другим текстом, частью которого является Escape последовательность.
Например, в файлах необходимо заменить "https" на "[InternetShortcut]\r\nURL=https", где \r\n - это esc-последовательность.

Добавлено: Вт мар 26, 2013 20:05
Batya

Добавлено: Вт мар 26, 2013 20:13
iG0R
Batya
Спасибо за ответ, но этот скрипт
по сути ничем не отличается от ReplaceInFiles.vbs со страницы №4

Код: Выделить всё

'  File:         ReplaceInFiles.vbs
'  Description:  Search and replace of text
'                in selected files
'  Installation: Create a button on a TC bar
'                Command: "disk:\path\ReplaceInFiles.vbs"
'                Parameters: "%L" (exactly in "")
'  Copyright:    (c) 2006, Volniy (mod by Yuk)
 
Option Explicit
 
Dim FSO, Find_String, Replace_String, F, Buffer, ListFile, re
Const ForReading = 1, ForWriting = 2
 
Set FSO = CreateObject("Scripting.FileSystemObject")
Set re = New RegExp
 
Find_String = InputBox("Enter search string", "Search and Replace")
If Len(Find_String) = 0 Then
   MsgBox "Search string was not set!", vbExclamation, "Search and Replace"
   WScript.Quit()
End If
 
Replace_String = InputBox("Enter replace string", "Search and Replace")
 
Set ListFile = FSO.OpenTextFile(WScript.Arguments(0), 1)
Do While Not ListFile.AtEndOfStream
   Call DoItForThisFile(ListFile.ReadLine)
Loop
ListFile.Close
Set ListFile = Nothing
Set F = Nothing
Set FSO = Nothing
 
MsgBox "Replace done!", vbInformation, "Search and Replace"
WScript.Quit
 
Sub DoItForThisFile(FilePath)
   Set F = FSO.OpenTextFile(FilePath, ForReading)
   Buffer = F.ReadAll
   F.Close
 
 
    re.Pattern = Find_String
    re.Global = True
    re.IgnoreCase = True
    re.MultiLine = True  
 
   Buffer = re.Replace(CStr(Buffer), Replace_String)
   FSO.CopyFile FilePath, FilePath & ".bak"
 
   Set F = FSO.OpenTextFile(FilePath, ForWriting)
   F.Write Buffer
   F.Close
End Sub 
Который может искать по Esc-последовательности, но не может заменять. :(

Добавлено: Вт мар 26, 2013 20:33
Batya
iG0R
Хм... :(

Скрипт, использующий EmEditor, с той же страницы работает, как тебе надо.

Добавлено: Вт мар 26, 2013 20:54
Avada
iG0R
Зачем было полностью цитировать скрипт, на который выше уже давалась ссылка? Скрипта "ReplaceInFiles.vbs со страницы №4" в представленном виде на указанной странице нет — приведён модифицированный вариант, взятый из какого-то другого источника (и на него была бы уместна ссылка).
Приучаемся к порядку — и на форуме вообще, и конкретно в "Автоматизации". См. также здесь.
В предыдущие посты внесены некоторые изменения.

Windows Script Host

Добавлено: Ср фев 26, 2014 00:47
Krots
В Win7 32 не получается установить сей замечательный продукт TCWSHelp.exe. Выдает ошибку "Unexpected error; quitting". На ХР все нормально. Подскажите, плз, как решить проблему?

Добавлено: Ср фев 26, 2014 02:04
Rodny
Какая версия хелпера? Запуск от имени админа?

Windows Script Host

Добавлено: Ср фев 26, 2014 07:02
Krots
Да, запуск от имени админа помог, спасибо. В ХР как то попроще было, 10 лет на ней сидел, теперь такая ломка, ужс.

Поиск и замена текста без тотала

Добавлено: Вс май 04, 2014 23:41
dydaevskiy
Возможно ли изменить скрипт что бы он делал свою работу без тотала? То есть я просто помещаю скрипт в папку, в скрипте пишу что найти и на что заменить. Скрипт после запуска будет искать и заменять во всех .txt и .m3u файлах нужные строки, в независимости от того в какой папке или подпапки данные файлы находятся.

Добавлено: Пн май 05, 2014 01:33
Flasher
dydaevskiy
Возможно, конечно, но тогда это уже будет не Автоматизация Total Commander.
Да и скрипт в таком случае не особо нужен, программ-заменялок в сети - тьма.

Добавлено: Пн май 05, 2014 11:26
dydaevskiy
Да в том то и дело что в тотале не могу настроить полноценный планировщик. А так я б скрипт закинул стандартному планировщику windows и все было б отлично. Перерыл тьму программ заменялок, но планировщика в них нет. Прошу прощение что не совсем по теме, но уж очень сильно нуждаюсь в помощи.

Добавлено: Пн май 05, 2014 11:55
Flasher
dydaevskiy
Это не меняет картины. Файлменеджер и планировщик уже по сути имеют разные цели. Тут же тема конкретно по синтаксису языков на основе WSH, применительно к ТС.
Что же касается планировщика, то есть смысл в отношении него задействовать консольные приложения (пример 1, пример 2, пример 3).

Добавлено: Вс авг 17, 2014 01:37
Dimsok
Создание текстового файла с содержимым буфера обмена

Как сделать, чтобы файл создавался в активной панели, а не в папке, где лежит данный скрипт. Может какие-то параметры прописать. И желательно, чтобы файл создавался сразу, без необходимости подтверждения

[mod="Avada"]Про правила оформления скриптов и ссылок на них говорилось многократно, в том числе в текущей теме на этой же странице. Приведено к нормальному состоянию.[/mod]

Добавлено: Вс авг 17, 2014 02:21
Flasher
Dimsok
См. прилепленную тему подфорума. В скобках что написано? Угу...
Заодно см. этот вариант.