Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Как получить значение параметра из реестра, добавить значение в текстовый файл etc.?

Ответить
Настройки темы
CMD/BAT - [решено] Как получить значение параметра из реестра, добавить значение в текстовый файл etc.?

Новый участник


Сообщения: 42
Благодарности: 0


Конфигурация

Профиль | Отправить PM | Цитировать


Изменения
Автор: Dark Ange1
Дата: 08-10-2010
Доброе время суток!

Подскажите пожалуйста, как получить ТОЛЬКО значение одного параметра из реестра и скопировать его в буфер обмена и/или в текстовый файл?
Например, мне нужно скопировать и записать в текстовый файл(с перезаписью) значение параметра dword Wallpaper_0_FileName из пути реестра HKEY_CURRENT_USER\Software\Binary Fortress Software\DisplayFusion\Wallpaper

Отправлено: 14:35, 07-09-2010

 

Аватара для gora

Ушёл из жизни


Сообщения: 6021
Благодарности: 3491

Профиль | Отправить PM | Цитировать


Как-то так:
Код: Выделить весь код
For /F "UseBackQ Tokens=2*" %%I In (`Reg Query "HKCU\Software\Binary Fortress Software\DisplayFusion\Wallpaper"^|Find /I "Wallpaper_0_FileName"`) Do Echo %%J>text.txt
Это сообщение посчитали полезным следующие участники:

Отправлено: 11:09, 09-09-2010 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Новый участник


Сообщения: 42
Благодарности: 0

Профиль | Отправить PM | Цитировать


Спасибо, супер, работает! Осталось только добавить, что в начале батника/cmd надо ставить
Код: Выделить весь код
CHCP 1251
чтобы правильно копировалась кириллица.

И как нужно модифицировать код, чтобы значение не заменялось а добавлялось в конец файла?

Отправлено: 21:41, 08-10-2010 | #3


Аватара для gora

Ушёл из жизни


Сообщения: 6021
Благодарности: 3491

Профиль | Отправить PM | Цитировать


Цитата Dark Ange1:
добавлялось в конец файла? »
Добавить еще один ">"
Код: Выделить весь код
For /F "UseBackQ Tokens=2*" %%I In (`Reg Query "HKCU\Software\Binary Fortress Software\DisplayFusion\Wallpaper"^|Find /I "Wallpaper_0_FileName"`) Do Echo %%J>>text.txt

Отправлено: 22:07, 08-10-2010 | #4


Новый участник


Сообщения: 42
Благодарности: 0

Профиль | Отправить PM | Цитировать


И еще: если
Код: Выделить весь код
For /F "UseBackQ Tokens=2*" %%I In (`Reg Query "HKCU\Software\Binary Fortress Software\DisplayFusion\Wallpaper"^|Find /I "Wallpaper_0_FileName"`) Do Echo %%J|clip
, то как потом в этой же консоли вставить значение буфера обмена. Например, для использования с командой move

Цитата gora:
Добавить еще один ">" »
блин, не поверишь - только что сам вспомнил и хотел сюда написать

Отлично. Теперь я могу получить текстовый файл со списком путей к файлу, включая имя файла в столбик типа этого:
Код: Выделить весь код
D:\Wallpapers\Dir1\file1.jpg
D:\Wallpapers\Dir2\file2.jpg
D:\Wallpapers\Dir1\file55.jpg
...
D:\Wallpapers\Dir678\file2098.jpg
...
А вот как теперь копировать/переместить/удалить файлы по путям из того списка?

Отправлено: 22:13, 08-10-2010 | #5


Аватара для gora

Ушёл из жизни


Сообщения: 6021
Благодарности: 3491

Профиль | Отправить PM | Цитировать


Код: Выделить весь код
For /F "tokens=* delims=" %%i In (names.txt) Do Echo %%i
names.txt - файл со списком путей
Echo - замените на: копировать/переместить/удалить

Последний раз редактировалось gora, 08-10-2010 в 23:19.

Это сообщение посчитали полезным следующие участники:

Отправлено: 22:48, 08-10-2010 | #6


Новый участник


Сообщения: 42
Благодарности: 0

Профиль | Отправить PM | Цитировать


А если пути файлов в names.txt содержат пробелы?

Отправлено: 23:10, 08-10-2010 | #7


Новый участник


Сообщения: 42
Благодарности: 0

Профиль | Отправить PM | Цитировать


Спасибо. Заработало. Но для xcopy заработало только после того, как поменял
Код: Выделить весь код
Do xcopy %%i  C:\Walls\ /y
на
Код: Выделить весь код
Do xcopy "%%i" C:\Walls\ /y
, т.е. %%i взял в кавычки.

Я немного некорректно сообщил условия
Цитата:
Отлично. Теперь я могу получить текстовый файл со списком путей к файлу, включая имя файла в столбик типа этого:
Код: Выделить весь код
D:\Wallpapers\Dir1\file1.jpg
D:\Wallpapers\Dir2\file2.jpg
D:\Wallpapers\Dir1\file55.jpg
...
D:\Wallpapers\Dir678\file2098.jpg
...
На самом деле в списке присутствовала кириллица в кодировке CHCP 1251 и пробелы:
Код: Выделить весь код
D:\Обои на удаление\Папка 1\файл1.jpg
D:\Обои на удаление\Папка 2\файл2.jpg
D:\Обои на удаление\Папка 1\файл_42.jpg
...
D:\Обои на удаление\-=Папка 546=-\файл_222.jpg
...

Отправлено: 23:45, 08-10-2010 | #8


Ветеран


Сообщения: 2182
Благодарности: 720

Профиль | Отправить PM | Цитировать


Пытаюсь разобраться с присвоением переменных. Подскажите, почему не работает скрипт?
Код: Выделить весь код
For /F "UseBackQ Tokens=2*" %%I In (`Reg Query "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\"^|Find /I "BuildLab"`) Do set /a Build=%%a
For /F "UseBackQ Tokens=2*" %%I In (`Reg Query "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\"^|Find /I "CSDVersion"`) Do set /a Version=%%b
For /F "UseBackQ Tokens=2*" %%I In (`Reg Query "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\"^|Find /I "ProductName"`) Do set /a Product=%%c
CHCP 1251 >Nul
echo %Product%>>txt.txt
echo %Version%>>txt.txt
echo %Build%>>txt.txt

Отправлено: 20:14, 24-03-2011 | #9


Аватара для gora

Ушёл из жизни


Сообщения: 6021
Благодарности: 3491

Профиль | Отправить PM | Цитировать


Цитата sov44:
Код: Выделить весь код
For /F "UseBackQ Tokens=2*" %%I In (`Reg Query "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\"^|Find /I "BuildLab"`) Do set /a Build=%%a
»
Удалите во всех строках выделенное цветом.

Отправлено: 20:35, 24-03-2011 | #10



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Как получить значение параметра из реестра, добавить значение в текстовый файл etc.?

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Доступ - Как получить доступ к файлам, папкам и разделам реестра Blast Microsoft Windows Vista 209 27-10-2013 23:01
[решено] Удаление строкового параметра в ключе реестра MKN AutoIt 4 10-04-2011 00:13
CMD/BAT - [решено] Получение значения параметра реестра IfoR Скриптовые языки администрирования Windows 6 08-04-2010 12:54
CMD/BAT - [решено] Получение значения параметра реестра user_123 Скриптовые языки администрирования Windows 3 05-04-2010 13:10
[решено] Как получить имя ветки реестра? garanov AutoIt 11 18-12-2009 12:25




 
Переход