Как мне искать удалить значение REG_SZ в системных переменных среды. Например, в системных переменных у меня есть переменная с именем

LM_LICENSE_FILE= 123@abc;123@cde;123@fgh

Я хочу иметь скрипт для поиска 123@cde и удаления его.

2 ответа2

1

Как найти и удалить значение REG_SZ в системных переменных среды?

Вы можете использовать reg чтобы найти и удалить записи реестра.

Вам нужно будет знать, в каком корне хранится элемент реестра, который вы хотите удалить.

Чтение, установка или удаление ключей и значений реестра, сохранение и восстановление из.REG-файл

Синтаксис:

...

REG DELETE [ROOT] RegKey /v ValueName [/f]

REG DELETE [ROOT] RegKey /ve [/f] - удалить значение (по умолчанию)

REG DELETE [ROOT] RegKey /va [/f] - удалить все значения под этим ключом

...

Ключ:

КОРЕНЬ:

HKLM = HKey_Local_machine (по умолчанию)

HKCU = HKey_current_user

HKU = HKey_users

HKCR = HKey_classes_root

...

ValueName: значение под выбранным RegKey для редактирования. (по умолчанию все ключи и значения)

Источник reg.exe


Предупреждение

Приведенные выше инструкции содержат шаги, которые говорят вам, как изменить реестр.

Однако при неправильном изменении реестра могут возникнуть серьезные проблемы.

Для дополнительной защиты создайте резервную копию реестра, прежде чем изменять его. Затем вы можете восстановить реестр, если возникнет проблема.

Для получения дополнительной информации см. Как выполнить резервное копирование и восстановление реестра в Windows.


Дальнейшее чтение

1

Вы не можете удалить только часть значения ключа, используя пакетный скрипт. Вы можете удалить LM_LICENSE_FILE , который является REG_SZ , но я не думаю, что это то, что вы хотите.

Вы можете использовать reg add для достижения того, о чем вы просите:

reg add "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /f /v "LM_LICENSE_KEY" /t REG_SZ /d "123@abc;123@fgh"

перезапишет вашу существующую переменную LM_LICENSE_FILE новым значением 123@abc;123fgh .

  • - reg add "HKLM\...\Environment" , ключ
  • /f /v "LM_LICENSE_KEY перезаписать без запроса, значение для действия
  • /t REG_SZ тип данных для добавления (по умолчанию REG_SZ так что вы можете его здесь опустить)
  • /d "123@abc;123@fgh" данные, которые будут добавлены

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .