Я ищу для реализации простого командного файла, который переименует текущую локальную папку профиля, резервные ключи реестра, а затем удалит ключи SID списка профилей. Поэтому позволяет компьютеру создать новый локальный профиль, который не является временным.Как сделать вывод CMD вместо строки в переменной SET
Где %U%
это имя учетной записи
set a=wmic useraccount where name="%U%" get sid /value
и поэтому, когда я исполняю ниже (где %a%
находится выше команда):
reg delete "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\%a% /f
интерпретирует его как:
reg delete "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\wmic useraccount where name="%U%" get sid /value"
Но я хочу:
"HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\SID=S-1-5-21-3519583588-1143172139-1479499458-1001"
Если я позвоню %a%
, он отображает
SID = S-1-5-21-3519583588-1143172139-1479499458-1001
и если эхо %a%
, он отображает
wmic useraccount where name="%U%" get sid
Если я просто введите %a%
, он отображает
SID = S-1-5-21-3519583588-1143172139-1479499458-1001
Просто объяснение, почему это происходит было бы здорово.
Ответ от команды wmic будет 'SID = ....' поэтому опускать 'SID =' и просто 'устанавливать %% A'. И поскольку другого выхода нет, 'goto: br' не требуется. – LotPings
Хорошие баллы. Я изменил свой ответ. – abelenky
Спасибо @abelenky Я обязательно отвечу на это :) :) –