Форум программистов, компьютерный форум, киберфорум
Batch (CMD/BAT)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.55/11: Рейтинг темы: голосов - 11, средняя оценка - 4.55
 Аватар для vavun
10593 / 5556 / 865
Регистрация: 07.04.2013
Сообщений: 15,660

Удаление лишних строк в reg-файле

25.12.2015, 18:03. Показов 2342. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Приветствую всех !

К примеру имеется дамп ветки реестра HKLM\SYSTEM\CurrentControlSet\services
И мне нужно из этого
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
Windows Registry Editor Version 5.00
 
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\ql40xx]
"Start"=dword:00000003
"Type"=dword:00000001
"ErrorControl"=dword:00000001
"ImagePath"=hex(2):5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,\
  74,00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,64,00,72,\
  00,69,00,76,00,65,00,72,00,73,00,5c,00,71,00,6c,00,34,00,30,00,78,00,78,00,\
  2e,00,73,00,79,00,73,00,00,00
"Group"="SCSI Miniport"
"DriverPackageId"="ql40xx.inf_amd64_neutral_77a826e5c0a07842"
 
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\ql40xx\Parameters]
"BusType"=dword:00000009
 
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\ql40xx\Parameters\Device]
"DriverParameter"=""
 
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\ql40xx\Parameters\PnpInterface]
"5"=dword:00000001
 
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\QWAVE]
"DisplayName"="@%SystemRoot%\\system32\\qwave.dll,-1"
"ErrorControl"=dword:00000001
"ImagePath"=hex(2):25,00,77,00,69,00,6e,00,64,00,69,00,72,00,25,00,5c,00,73,00,\
  79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,73,00,76,00,63,00,68,00,6f,\
  00,73,00,74,00,2e,00,65,00,78,00,65,00,20,00,2d,00,6b,00,20,00,4c,00,6f,00,\
  63,00,61,00,6c,00,53,00,65,00,72,00,76,00,69,00,63,00,65,00,41,00,6e,00,64,\
  00,4e,00,6f,00,49,00,6d,00,70,00,65,00,72,00,73,00,6f,00,6e,00,61,00,74,00,\
  69,00,6f,00,6e,00,00,00
"Start"=dword:00000003
"Type"=dword:00000020
"Description"="@%SystemRoot%\\system32\\qwave.dll,-2"
"DependOnService"=hex(7):72,00,70,00,63,00,73,00,73,00,00,00,70,00,73,00,63,00,\
  68,00,65,00,64,00,00,00,51,00,57,00,41,00,56,00,45,00,64,00,72,00,76,00,00,\
  00,4c,00,4c,00,54,00,44,00,49,00,4f,00,00,00,00,00
"ObjectName"="NT AUTHORITY\\LocalService"
"ServiceSidType"=dword:00000001
"RequiredPrivileges"=hex(7):53,00,65,00,43,00,68,00,61,00,6e,00,67,00,65,00,4e,\
  00,6f,00,74,00,69,00,66,00,79,00,50,00,72,00,69,00,76,00,69,00,6c,00,65,00,\
  67,00,65,00,00,00,00,00
"FailureActions"=hex:84,03,00,00,00,00,00,00,00,00,00,00,03,00,00,00,14,00,00,\
  00,01,00,00,00,c0,d4,01,00,01,00,00,00,e0,93,04,00,00,00,00,00,00,00,00,00
 
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\QWAVE\Parameters]
"ServiceDllUnloadOnStop"=dword:00000001
"ServiceMain"=hex(2):53,00,65,00,72,00,76,00,69,00,63,00,65,00,4d,00,61,00,69,\
  00,6e,00,00,00
"LLTD"=dword:00000001
"ServiceDll"=hex(2):25,00,77,00,69,00,6e,00,64,00,69,00,72,00,25,00,5c,00,73,\
  00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,71,00,77,00,61,00,76,00,\
  65,00,2e,00,64,00,6c,00,6c,00,00,00
"ProbegapTrace"=dword:00000000
 
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\QWAVE\Security]
"Security"=hex:01,00,04,80,5c,00,00,00,68,00,00,00,00,00,00,00,14,00,00,00,02,\
  00,48,00,03,00,00,00,00,00,14,00,9d,00,00,00,01,01,00,00,00,00,00,05,04,00,\
  00,00,00,00,14,00,9d,00,00,00,01,01,00,00,00,00,00,05,14,00,00,00,00,00,18,\
  00,ff,01,0f,00,01,02,00,00,00,00,00,05,20,00,00,00,20,02,00,00,01,01,00,00,\
  00,00,00,05,12,00,00,00,01,01,00,00,00,00,00,05,12,00,00,00
 
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\QWAVEdrv]
"DisplayName"="@%SystemRoot%\\system32\\drivers\\qwavedrv.sys,-1"
"ErrorControl"=dword:00000001
"ImagePath"=hex(2):5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,\
  74,00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,64,00,72,\
  00,69,00,76,00,65,00,72,00,73,00,5c,00,71,00,77,00,61,00,76,00,65,00,64,00,\
  72,00,76,00,2e,00,73,00,79,00,73,00,00,00
"Start"=dword:00000003
"Type"=dword:00000001
"Description"="@%SystemRoot%\\system32\\drivers\\qwavedrv.sys,-2"
 
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\QWAVEdrv\Security]
"Security"=hex:01,00,04,80,5c,00,00,00,68,00,00,00,00,00,00,00,14,00,00,00,02,\
  00,48,00,03,00,00,00,00,00,14,00,9d,00,00,00,01,01,00,00,00,00,00,05,04,00,\
  00,00,00,00,14,00,9d,00,00,00,01,01,00,00,00,00,00,05,14,00,00,00,00,00,18,\
  00,ff,01,0f,00,01,02,00,00,00,00,00,05,20,00,00,00,20,02,00,00,01,01,00,00,\
  00,00,00,05,12,00,00,00,01,01,00,00,00,00,00,05,12,00,00,00
 
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\RasAcd]
"Type"=dword:00000001
"Start"=dword:00000003
"ErrorControl"=dword:00000001
"Tag"=dword:00000001
"ImagePath"=hex(2):53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,44,00,\
  52,00,49,00,56,00,45,00,52,00,53,00,5c,00,72,00,61,00,73,00,61,00,63,00,64,\
  00,2e,00,73,00,79,00,73,00,00,00
"DisplayName"="Remote Access Auto Connection Driver"
"Group"="Streams Drivers"
"Description"="Remote Access Auto Connection Driver"
 
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\RasAcd\Parameters]
 
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\RasAcd\Security]
"Security"=hex:01,00,14,88,78,00,00,00,84,00,00,00,14,00,00,00,30,00,00,00,02,\
  00,1c,00,01,00,00,00,02,80,14,00,ff,01,0f,00,01,01,00,00,00,00,00,01,00,00,\
  00,00,02,00,48,00,03,00,00,00,00,00,14,00,fd,01,02,00,01,01,00,00,00,00,00,\
  05,12,00,00,00,00,00,18,00,ff,01,0f,00,01,02,00,00,00,00,00,05,20,00,00,00,\
  20,02,00,00,00,00,14,00,8d,01,02,00,01,01,00,00,00,00,00,05,0b,00,00,00,01,\
  01,00,00,00,00,00,05,12,00,00,00,01,01,00,00,00,00,00,05,12,00,00,00
 
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\RasAgileVpn]
"Type"=dword:00000001
"Start"=dword:00000003
"ErrorControl"=dword:00000001
"ImagePath"=hex(2):73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,44,00,\
  52,00,49,00,56,00,45,00,52,00,53,00,5c,00,41,00,67,00,69,00,6c,00,65,00,56,\
  00,70,00,6e,00,2e,00,73,00,79,00,73,00,00,00
"DisplayName"="WAN Miniport (IKEv2)"
"Description"="WAN Miniport (IKEv2)"
"NdisMajorVersion"=dword:00000006
"NdisMinorVersion"=dword:00000000
сделать вот это

Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Windows Registry Editor Version 5.00
 
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\ql40xx]
"Start"=dword:00000003
 
 
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\QWAVE]
"Start"=dword:00000003
 
 
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\QWAVEdrv]
"Start"=dword:00000003
 
 
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\RasAcd]
"Start"=dword:00000003
 
 
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\RasAgileVpn]
"Start"=dword:00000003

Я, если честно, затрудняюсь.

findstr мне упорно ничего не хочет выводить
Windows Batch file
FINDSTR /i "HKEY_LOCAL_MACHINE Start" services.reg
Как это сделать с помощью for - тоже не понятно, ладно бы просто найти start, так тут надо каждый конкретный старт от каждой ветки реестра брать и не перепутать + start есть не у каждой ветки


А как сделать по другому, я даже и не знаю.

Буду благодарен за любой полезный намек.
Заранее благодарю

Добавлено через 31 минуту
Windows Batch file
find /i "HKEY_LOCAL_MACHINE Start" < "services.reg" > "services2.txt"
Тоже не вышло. Хотя там, где нашел - утверждают, что работало

Добавлено через 1 час 40 минут
Разобрался
Как всегда очевидные вещи ускользают от меня

Windows Batch file
1
findstr /I /C:""Start"=" /C:"HKEY_LOCAL_MACHINE" services.reg> services2.reg
Как я уже говорил
Цитата Сообщение от vavun Посмотреть сообщение
start есть не у каждой ветки
соответственно на выходе получилось вот это

Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services]
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\.NET CLR Data]
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\.NET CLR Data\Linkage]
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\.NET CLR Data\Performance]
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\.NET CLR Networking]
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\.NET CLR Networking\Linkage]
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\.NET CLR Networking\Performance]
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\.NET CLR Networking 4.0.0.0]
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\.NET CLR Networking 4.0.0.0\Linkage]
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\.NET CLR Networking 4.0.0.0\Performance]
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\.NET Data Provider for Oracle]
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\.NET Data Provider for Oracle\Linkage]
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\.NET Data Provider for Oracle\Performance]
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\.NET Data Provider for SqlServer]
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\.NET Data Provider for SqlServer\Linkage]
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\.NET Data Provider for SqlServer\Performance]
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\.NET Memory Cache 4.0]
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\.NET Memory Cache 4.0\Linkage]
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\.NET Memory Cache 4.0\Performance]
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\.NETFramework]
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\.NETFramework\Performance]
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\1394ohci]
"Start"=dword:00000003
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\ACPI]
"Start"=dword:00000000
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\ACPI\Parameters]
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\ACPI\Parameters\WakeUp]
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\ACPI\Enum]
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\AcpiPmi]
"Start"=dword:00000003
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\AdobeARMservice]
"Start"=dword:00000003
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\AdobeFlashPlayerUpdateSvc]
"Start"=dword:00000003
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\adp94xx]
"Start"=dword:00000003
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\adp94xx\Parameters]
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\adp94xx\Parameters\Device]

Теперь новый вопрос: как удалить строку, если после нее нет строки содержащей "Start"=* ?


Такое ощущение, что я вообще не с того начал
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
25.12.2015, 18:03
Ответы с готовыми решениями:

Сцепка текста в ячейках, если совпадают значения в столбце А, удаление повторов имен, удаление лишних строк
Добрый день, подскажите, как решить задачу: Есть список организаций с контактами. Одна организация может быть представлена разным...

Удаление лишних пробелов в файле
Помогите плиз решить лабы по паскалю) 2. Дан текстовый файл f. Переписать его содержимое в файл g таким образом, чтобы в нем были удалены...

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

2
 Аватар для ComSpec
3462 / 2000 / 635
Регистрация: 26.02.2014
Сообщений: 1,457
25.12.2015, 22:44
Лучший ответ Сообщение было отмечено vavun как решение

Решение

Цитата Сообщение от vavun Посмотреть сообщение
... сделать вот это

Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Windows Registry Editor Version 5.00
 
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\ql40xx]
"Start"=dword:00000003
 
 
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\QWAVE]
"Start"=dword:00000003
 
 
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\QWAVEdrv]
"Start"=dword:00000003
 
 
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\RasAcd]
"Start"=dword:00000003
 
 
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\RasAgileVpn]
"Start"=dword:00000003


Windows Batch file
1
2
3
4
5
                                          @echo off
<"services.reg">"services2.reg" 2>nul cmd/v/c for /f "tokens=*" %%i in ('more') do @if not^
    defined bool (echo.%%i^& echo.^& set bool=true) else if "%%i" neq "" set "%%i"^&^&^
        (if defined "Start" echo.!y!^& set ""Start""^& set ""Start"="^& echo.^& ^
            echo.)^|^| (set x=%%i^& if "!x:~,1!" equ "[" set y=%%i)& exit/b
1
 Аватар для vavun
10593 / 5556 / 865
Регистрация: 07.04.2013
Сообщений: 15,660
25.12.2015, 23:08  [ТС]
ComSpec, в очередной раз выручаешь )
Работает, спасибо

Добавлено через 38 секунд

Не по теме:

на ёлочку не хватило ? )



Добавлено через 16 минут

Не по теме:

Блин, прикольный код :scratch:

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
25.12.2015, 23:08
Помогаю со студенческими работами здесь

Задача на удаление лишних пробелов в текстовом файле
Вот тут такая задачка кто нибудь помогите мне:help: Организовать текстовый файл состоящий из N строк. Преобразовать файл, удалив в...

Сортировка и удаление лишних строк
Помогите с кодом сортировки. В общем в текстовую строку пишите номер магазина, все записи с этим номером показываются на листе, а остальные...

Удаление лишних строк таблицы, парсер PS
Здравствуйте! Имеется скрипт парсера некой веб - страницы, содержащую таблицу. Таблица извлечена из тега &lt;table&gt;: $uri =...

Удаление лишних строк - доделать макрос
Приветствую знатоков и прошу помочь доделать код. Есть текстовые данные, разбитые постранично. На каждой странице титульная часть из 2...

Упражнение 1.18 Удаление лишних пробелов, табуляций и строк
Упражнение 1.18. Напишите программу, которая будет в каждой вводимой строке заменять стоящие подряд символы пробелов и табуляций на один...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru