Я пытаюсь получить имя значения reg, а затем удалить его. Этот реестр является строковым значением, и его имя отличается почти на машинах, однако общее имя — «Excompass.exe». Я использую этот запрос для получения ключа реестра: —
reg query "HKCUSoftwareMicrosoftWindows NTCurrentVersionAppCompatFlagsLayers" |findstr /i "Encompass.exe"
Он показывает следующий результат: —
C:SmartClientCacheAppsEllie MaeEncompassEncompass.exe REG_SZ $ IgnoreFreeLibrary<AcroRd32.dll>
Проблема в том, что мне просто нужно имя «C: SmartClientCache Apps Ellie Mae Encompass Encompass.exe», но я не могу его извлечь.
Как мы можем получить это имя значения реестра?
Я легко могу сделать это с помощью PowerShell, но мне это нужно в CMD.
Спасибо,
1 ответ
Как мы можем получить это имя значения реестра?
Что-то вроде следующего должно работать (не проверено):
@echo off
setlocal enableDelayedExpansion
for /f "usebackq tokens=1 %%i in (`reg query "HKCUSoftwareMicrosoftWindows NTCurrentVersionAppCompatFlagsLayers" |findstr /i "Encompass.exe"`) do (
echo %%i
rem do something with %%i
)
Дальнейшее чтение
- Индекс А-Я командной строки Windows CMD — Отличный справочник по всем вопросам, связанным с линией Windows cmd.
- для / f — Зациклить команду на результатах другой команды.