CMD/BAT - Поиск и замена строк в ini-файлах

Аватара пользователя
alex_frog

CMD/BAT - Поиск и замена строк в ini-файлах

Сообщение alex_frog »

Просьба, подобрать скрипт, который изменяет строки в ini-файлах через cmd, bat



1. Есть несколько ini-файлов содержащие строки например "lifenumber=20" которые постоянно меняются.

Нужно написать скрипт, который ищет в нескольких указанных каталогах ini-файлы (все, что найдет) со строкой "lifenumber=20" и найдя, увеличивает число на 1 единицу больше (+1), на примере "lifenumber=21"

2. Другой скрипт, тоже ищет строку "lifenumber=число" в указанных каталогах (их несколько) и удаляет строку "lifenumber=число" или комментируется строка, например ";lifenumber=число"
Аватара пользователя
Iska

Re: CMD/BAT - Поиск и замена строк в ini-файлах

Сообщение Iska »

Упакуйте образцы ini-файлов в архив и выложите на RGhost или прикрепите к сообщению.




Цитата alex_frog:



который ищет в нескольких указанных каталогах ini-файлы (все, что найдет)
CMD/BAT - Поиск и замена строк в ini-файлах




А это зачем?
Аватара пользователя
alex_frog

Re: CMD/BAT - Поиск и замена строк в ini-файлах

Сообщение alex_frog »

Цитата alex_frog:



1. Есть несколько ini-файлов содержащие строки например "lifenumber=20" которые постоянное меняются.

Нужно написать скрипт, который ищет в нескольких указанных каталогах ini-файлы (все, что найдет) со строкой "lifenumber=20" и найдя, увеличивает число на 1 единицу больше (+1), на примере "lifenumber=21"
CMD/BAT - Поиск и замена строк в ini-файлах








Код:

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

@echo off
set targets="D:\Test\556\1\*.ini" "D:\Test\557\2\*.ini" "D:\Test\558\3\*.ini"
for /f "delims=" %%i in ('"dir /a-d/b/s %targets% 2>nul"') do (
 for /f "delims=" %%j in ('"type "%%i"& del "%%i""') do (
  for /f "tokens=1,2 delims==" %%k in ("%%j") do (
   if "%%k"=="lifenumber" (
    for /f %%m in ('set /a %%l+1') do (
     echo %%k=%%m>>"%%i"
     )
   ) else (
    echo.%%j>>"%%i"
    )
   )
  )
 )
exit /b
Аватара пользователя
Georgio

Re: CMD/BAT - Поиск и замена строк в ini-файлах

Сообщение Georgio »

Georgio, спасибо, п.1 работает, даже рекурсивно
Аватара пользователя
alex_frog

Re: CMD/BAT - Поиск и замена строк в ini-файлах

Сообщение alex_frog »

Georgio, спасибо, п.1 работает, даже рекурсивно
Аватара пользователя
alex_frog

Re: CMD/BAT - Поиск и замена строк в ini-файлах

Сообщение alex_frog »

Georgio, скрипт "удаляет" удаляет сам файл, а нужно только эту найденную строку

С коммментарием, все ок
Аватара пользователя
alex_frog

Re: CMD/BAT - Поиск и замена строк в ini-файлах

Сообщение alex_frog »

Цитата alex_frog:



Нужно искать несколько строк со словами типа "lifenumber", "lifenumberd1" и "lifenumberd2" и находить по указанным секциям, например [section1], [section2] и прибавлять значения чисел "+1"
CMD/BAT - Поиск и замена строк в ini-файлах




alex_frog, нужен образец INI-файла в архиве.
Аватара пользователя
Georgio

Re: CMD/BAT - Поиск и замена строк в ini-файлах

Сообщение Georgio »

Пример,



Код:

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

lifenumber=10
lifenumberd1=11
Lifenumberd2=12
[db:section1]
lifenumber=8
[db:section2]
lifenumber=9

Поиск с параметрами: путь с unc, указанный каталог и рекурсивно, файл или группа файлов *.ini, в ini-шках поиск и +1 строк "lifenumber" и\или " lifenumberd1"и\или "lifenumberd2" по нескольким указанным секциям и без указаний секций
Аватара пользователя
aleks_frog

Re: CMD/BAT - Поиск и замена строк в ini-файлах

Сообщение aleks_frog »

Цитата aleks_frog:



Пример
CMD/BAT - Поиск и замена строк в ini-файлах







Цитата Georgio:



нужен образец INI-файла в архиве
CMD/BAT - Поиск и замена строк в ini-файлах




,

а не пример.
Аватара пользователя
Georgio

Re: CMD/BAT - Поиск и замена строк в ini-файлах

Сообщение Georgio »

aleks_frog, что случилось с alex_frog? Зачем новая учётная запись?
Ответить

Вернуться в «Скриптовые языки администрирования Windows»