CMD/BAT - [решено] Как получить только значения реестра cmd
-
NeformalDron
CMD/BAT - [решено] Как получить только значения реестра cmd
Приветствую. Есть необходимость из командной строки переменной присвоить ТОЛЬКО значение переменой по адресу HKLM\Software\Microsoft\Windows NT\CurrentVersion\Winlogon /v DefaultUserName
-
NeformalDron
Re: CMD/BAT - [решено] Как получить только значения реестра cmd
Ну, например:
Скрытый текст
[spoiler]Код: [/spoiler]
Скрытый текст
[spoiler]Код: [/spoiler]
Код: Выделить всё
@echo off
setlocal enableextensions enabledelayedexpansion
>nul chcp 1251
for /f "usebackq tokens=3" %%i in (
`reg.exe query "HKLM\Software\Microsoft\Windows NT\CurrentVersion\Winlogon" /v "DefaultUserName" ^| find.exe /i "DefaultUserName"`
) do set sDefaultUserName=%%i
>nul chcp 866
if defined sDefaultUserName (
echo [%sDefaultUserName%]
) else (
echo Not found [DefaultUserName] parameter in [HKLM\Software\Microsoft\Windows NT\CurrentVersion\Winlogon] subkey.
)
endlocal
exit /b 0-
NeformalDron
Re: CMD/BAT - [решено] Как получить только значения реестра cmd
Спасибо огромное)))
Цитата Iska:
Ну, например:
Скрытый текст
Цитата Iska:
Ну, например:
Скрытый текст
CMD/BAT - [решено] Как получить только значения реестра cmd
-
NeformalDron
Re: CMD/BAT - [решено] Как получить только значения реестра cmd
Всё вроде отлично. Код работает. Но есть один нюанс. При попытке изменить имя пользователя, осуществляющего автоматический вход в систему командой "wmic useraccount where name=’%sDefaultUserName%’ call rename Olen" получаю ответ "Отсутствуют экземпляры класса. 
-
NeformalDron
Re: CMD/BAT - [решено] Как получить только значения реестра cmd
Цитата NeformalDron:
При попытке изменить имя пользователя, осуществляющего автоматический вход в систему командой "wmic useraccount where name=’%sDefaultUserName%’ call rename Olen" получаю ответ "Отсутствуют экземпляры класса.
Покажите Ваш код.
При попытке изменить имя пользователя, осуществляющего автоматический вход в систему командой "wmic useraccount where name=’%sDefaultUserName%’ call rename Olen" получаю ответ "Отсутствуют экземпляры класса.
CMD/BAT - [решено] Как получить только значения реестра cmd
Покажите Ваш код.
-
NeformalDron
Re: CMD/BAT - [решено] Как получить только значения реестра cmd
Цитата:
@echo off
setlocal enableextensions enabledelayedexpansion
>nul chcp 1251
for /f "usebackq tokens=3" %%i in (
`reg.exe query "HKLM\Software\Microsoft\Windows NT\CurrentVersion\Winlogon" /v "DefaultUserName" ^| find.exe /i "DefaultUserName"`
) do set sDefaultUserName=%%i
>nul chcp 866
if defined sDefaultUserName (
echo [%sDefaultUserName%]
) else (
echo Not found [DefaultUserName] parameter in [HKLM\Software\Microsoft\Windows NT\CurrentVersion\Winlogon] subkey.
)
wmic useraccount where name=’%sDefaultUserName%’ call rename Olen
endlocal
exit /b 0
Если обрисовать суть задачи, то мне необходимо на ПК изменить имя пользователя, осуществляющего автоматический вход в систему. Имя пользователя заранее неизвестно и на разных ПК задано рэндомно. И необходимо массово "причесать" под единый стандарт.
Батник будет применяться локально.
@echo off
setlocal enableextensions enabledelayedexpansion
>nul chcp 1251
for /f "usebackq tokens=3" %%i in (
`reg.exe query "HKLM\Software\Microsoft\Windows NT\CurrentVersion\Winlogon" /v "DefaultUserName" ^| find.exe /i "DefaultUserName"`
) do set sDefaultUserName=%%i
>nul chcp 866
if defined sDefaultUserName (
echo [%sDefaultUserName%]
) else (
echo Not found [DefaultUserName] parameter in [HKLM\Software\Microsoft\Windows NT\CurrentVersion\Winlogon] subkey.
)
wmic useraccount where name=’%sDefaultUserName%’ call rename Olen
endlocal
exit /b 0
Если обрисовать суть задачи, то мне необходимо на ПК изменить имя пользователя, осуществляющего автоматический вход в систему. Имя пользователя заранее неизвестно и на разных ПК задано рэндомно. И необходимо массово "причесать" под единый стандарт.
Батник будет применяться локально.
-
Iska
Re: CMD/BAT - [решено] Как получить только значения реестра cmd
NeformalDron, как минимум замените Ваши «неправильные» кавычки на обычные одинарные. А ещё лучше — обрамите и всё условие двойными:
Код:
Код:
Код: Выделить всё
wmic.exe UserAccount where "Name='%sDefaultUserName%'" call rename Olen-
NeformalDron
Re: CMD/BAT - [решено] Как получить только значения реестра cmd
Да)))) Обрамить всё условие помогло. Спасибо огромное 
