![]() |
VBS скрип по редактированию .ORA файла
Вложений: 1
Добрый день Форумчане, есть такой вопрос, можно ли на VBS открыть файл .ORA (в частности listener.ora файл с настройками базы данных oracle XE), сам данный файл можно открыть и отредактировать блокнотом, нужно его открыть и дописать в конец файла некое содержимое. Как это можно сделать на VBS???
Файл есть во вложении. |
Цитата:
Код:
Dim objFSO : Set objFSO = CreateObject("Scripting.FileSystemObject") |
Спасибо за ответ, а можно ли дописать что то после определенной строки, например после 8 строки от начала файла?
|
Инжекта строки "на лету", насколько помню, в Васе нет, но это можно преодолеть, скажем, считав файл целиком и разбив его на массив строк с последующей "вставкой" в него нужной строки.
|
Можете показать пример того как это можно сделать?
Заранее благодарю! |
|
В данном файле listener.ora строк 23, вообще нужно дописать после 12 строки еще 6 строк. Можно было бы файл заменять полностью, файлом с нужным содержимым, но так как ПК с такими файлами много и имена ПК все разные то либо дописывать нужное после определенной строки, ли переписывать файл полность и по том в нужном месте еще заменять инфу с именем ПК.
|
Цитата:
Код:
with (new ActiveXObject('Scripting.FileSystemObject')) { |
Всем большое спасибо за помощь, данную проблему решил заменой файла и далее заменой имени в файле который скопировал на имя ПК.
Получилось что то вот такое: Dim fso Const OverWriteFiles = True Set fso = CreateObject("Scripting.FileSystemObject") Set WshShell = WScript.CreateObject("WScript.Shell") lsaptPathx = "c:\bat1" lsoraPathx = "c:\bat" FSO.CopyFile (lsaptPathx) , (lsoraPathx) & "\", OverWriteFiles dim objnet Set objnet = wscript.CreateObject("wscript.network") Const ForReading = 1 Const ForWriting = 2 Set objFSO = CreateObject("Scripting.FileSystemObject") Set objFileLis = objFSO.OpenTextFile("c:\BAT\listener.ora", ForReading) strText = objFileLis.ReadAll objFileLis.Close strOldText = "pcbd" strNewText = objNet.ComputerName strNewText = Replace(strText, strOldText, strNewText) Set objFileLis = objFSO.OpenTextFile("c:\BAT\listener.ora", ForWriting) objFileLis.WriteLine strNewText objFileLis.Close '************************************************** |
Цитата:
На самом деле вполне себе эстетично. Цитата:
|
Время: 02:59. |
Время: 02:59.
© OSzone.net 2001-