|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » VBS/WSH/JS - перезапись в тот же файл |
|
VBS/WSH/JS - перезапись в тот же файл
|
Пользователь Сообщения: 87 |
Профиль | Отправить PM | Цитировать
Имеется стандартный код для замены в файле символов @ на символы #
Цитата:
Можно ли записать их в исходный файл, удали прежние строки? |
||
Отправлено: 18:01, 01-07-2015 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Можно. Каков примерный объём отдельного файла?
|
Отправлено: 19:24, 01-07-2015 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Пользователь Сообщения: 87
|
Профиль | Отправить PM | Цитировать от 10 кб. до 3-5 Мб.
|
Отправлено: 20:04, 01-07-2015 | #3 |
Забанен Сообщения: 793
|
Всего лишь пример:
(function(file) { var fs, buf = []; try { with (new ActiveXObject('Scripting.FileSystemObject')) { fs = OpenTextFile(file, 1); while (!fs.AtEndOfStream) { buf.push(fs.ReadLine().replace(/@/g, '#')); } fs.Close(); fs = OpenTextFile(file, 2); fs.Write(buf.join('\n')); fs.Close(); } } catch (e) { WScript.echo(e); } }( WScript.Arguments.length !== 1 ? WScript.Quit(1) : WScript.Arguments.Unnamed(0) )); |
Отправлено: 20:30, 01-07-2015 | #4 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата ruslaw:
Я могу Вам такое «нарисовать» на VBScript. Если Вам обязательно на JScript (у меня нет желания с ним связываться), то просите коллегу greg zakharov'а или других коллег. |
||
Отправлено: 06:52, 02-07-2015 | #5 |
Пользователь Сообщения: 87
|
Профиль | Отправить PM | Цитировать Цитата Iska:
|
|
Отправлено: 11:02, 02-07-2015 | #6 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Примерно так (не проверялось):
Скрытый текст
Option Explicit Const ForWriting = 2 Dim strSourceFile Dim strContent If WScript.Arguments.Count = 1 Then strSourceFile = WScript.Arguments.Item(0) With WScript.CreateObject("Scripting.FileSystemObject") If .FileExists(strSourceFile) Then With .OpenTextFile(strSourceFile) strContent = .ReadAll() .Close End With With .OpenTextFile(strSourceFile, ForWriting) .Write Replace(strContent, "@", "#") .Close End With Else WScript.Echo "Can't find source file [" & strSourceFile & "]." WScript.Quit 2 End If End With Else WScript.Echo "Usage: cscript.exe //nologo """ & WScript.ScriptName & """ <Source file>" WScript.Quit 1 End If WScript.Quit 0 Путь к целевому файлу указывается аргументом скрипта (также можно просто перетащить целевой файл на скрипт в Проводнике). |
Отправлено: 03:36, 03-07-2015 | #7 |
Пользователь Сообщения: 87
|
Профиль | Отправить PM | Цитировать Да, спасибо, работает. Я даже приспособил его через батник делать пакетную обработку.
|
Отправлено: 03:18, 04-07-2015 | #8 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
C/C++ - Ввод и вывод в один и тот же файл. | PageRage | Программирование и базы данных | 1 | 27-05-2011 11:26 | |
Все тот же ControlSend | LexaSF | AutoIt | 8 | 22-12-2010 14:52 | |
Все тот же нет... | taraga | Сетевые технологии | 1 | 03-10-2005 18:20 | |
Все тот же Pascal... | Doktor | Программирование и базы данных | 8 | 16-01-2005 21:09 |
|