|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Изменение текста в ini файлах |
|
|
CMD/BAT - [решено] Изменение текста в ini файлах
|
Пользователь Сообщения: 72 |
Профиль | Отправить PM | Цитировать Добрый день. Имеются ini файлы, все они лежат в одном месте (Пусть будет D:\test).
Как можно с помощью скрипта изменить сразу несколько строк во всех ini файлах? Нужно поменять PostMark=536871936 на PostMark=1024 и DocVersion=RTM0099 на DocVersion=RTM003-13-17 |
|
Отправлено: 14:45, 23-09-2020 |
Забанен Сообщения: 793
|
romfus, кому адресованы ваши слова?
|
Отправлено: 13:53, 25-09-2020 | #21 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Пользователь Сообщения: 72
|
Профиль | Отправить PM | Цитировать В любом из выше предложенных вариантов такое
|
Отправлено: 04:10, 26-09-2020 | #22 |
Старожил Сообщения: 216
|
Профиль | Отправить PM | Цитировать romfus, пробуйте мой вариант:
powershell $path = 'J:\Download\' ForEach ($file in (Get-ChildItem $path -Filter *.ini -File)) { $fcontent = Get-Content $file -Encoding oem ` | ForEach {$_.Replace('PostMark=536871936','PostMark=1024').Replace('DocVersion=RTM0099','DocVersion=RTM003-13-17')} Set-Content $('new_'+$file.Name) -Value $fcontent } |
Отправлено: 08:06, 26-09-2020 | #23 |
Забанен Сообщения: 793
|
Цитата romfus:
|
|
Отправлено: 14:39, 26-09-2020 | #24 |
Ветеран Сообщения: 2708
|
Профиль | Отправить PM | Цитировать romfus,
VBS-скрипт. Создйте файл в 1251 кодировке (если в пути кириллица-это важно) с расширением .vbs и выполните его
MyDir = "Z:\Box_Arc\Тра ля ля" MyMask = "^.*\.ini$" MyRep = Array( _ "PostMark=536871936", _ "PostMark=1024", _ "DocVersion=RTM0099", _ "DocVersion=RTM003-13-17" _ ) Set Reg = CreateObject("VBScript.RegExp") Reg.IgnoreCase = True Reg.Pattern = MyMask With CreateObject("Scripting.FileSystemObject") Set Files = .GetFolder(MyDir).Files For Each File In Files Filename = File.Path If Reg.Test(Filename) Then Set fIn = .OpenTextFile(Filename, 1, False) InTxt = fIn.ReadAll fIn.Close L = False For i = LBound(MyRep) To UBound(MyRep) Step 2 If InStr(InTxt, MyRep(i)) > 0 Then L = True InTxt = Replace(InTxt, MyRep(i), MyRep(i + 1)) End If Next If L Then Set fIn = .CreateTextFile(Filename, True) fIn.Write InTxt fIn.Close End If End If Next End With MsgBox "Done" |
------- Последний раз редактировалось megaloman, 27-09-2020 в 11:19. Отправлено: 11:13, 27-09-2020 | #25 |
Пользователь Сообщения: 72
|
Профиль | Отправить PM | Цитировать Работает. Спасибо!
|
Отправлено: 09:01, 28-09-2020 | #26 |
Пользователь Сообщения: 93
|
Профиль | Отправить PM | Цитировать Цитата romfus:
В AkelPad есть замена текста сразу во всех открытых файлах Вероятно, есть и другие текстовые редакторы с такой возможностью |
|
Отправлено: 23:04, 29-09-2020 | #27 |
|
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Разное - [решено] Как восстановить значки по умолчанию в .ini файлах | Bai | Microsoft Windows 2000/XP | 16 | 13-03-2019 00:14 | |
CMD/BAT - Поиск и замена строк в ini-файлах | alex_frog | Скриптовые языки администрирования Windows | 10 | 25-11-2014 22:48 | |
CMD/BAT - замена текста в нескольких файлах | Alexander_88 | Скриптовые языки администрирования Windows | 7 | 03-09-2014 18:33 | |
VBS/WSH/JS - Удаление строк в INI файлах | gen0m.rsw | Скриптовые языки администрирования Windows | 5 | 27-06-2013 15:03 | |
C/C++ - Поиск текста в файлах | student_po | Программирование и базы данных | 6 | 04-09-2009 23:33 |
|