用户批处理文件问题
User Batch File Issues
好的一点背景知识我是使用批处理文件的新手。我正在尝试创建一个新用户,分配给管理员组,然后将当前用户降级为标准帐户。这都是本地的,将远程完成。我让它工作,所以创建了新用户并添加了管理员帐户,但我需要获取当前用户名并以某种方式在最后一个命令中调用它。以下是我目前的情况,请大家帮忙。
net user "USERNAME" "PASSWORD" /add /comment:"COMMENT" /passwordchg:NO
wmic useraccount where "name='USERNAME'" set passwordexpires=FALSE
net localgroup administrators "USERNAME" /add
timeout /t 20 /nobreak
wmic.exe /node:127.0.0.1 ComputerSystem Get Username
net localgroup administrators %username% /delete
wmic.exe /node:127.0.0.1 ComputerSystem Get Username > username.txt
for /f "delims=" %%A in ('type username.txt') DO SET MYUSER=%%A
del username.txt
net localgroup test %MYUSER% /delete
在下一个代码片段中,for
循环是:
%%a
检索用户名(在第二个令牌中,%%b
)
%%c
删除值 returned 中的结尾回车符 return (wmic
行为:每个输出行以 0x0D0D0A
而不是常见的结尾0x0D0A
)
注意 _
%_username%
中的前导下划线:不要覆盖系统环境变量 %username%
for /f "tokens=1* delims==" %%a in (
'wmic /node:127.0.0.1 ComputerSystem Get Username /value'
) do for /f "delims=" %%c in ("%%~b") do set "_username=%%c"
echo %_username%
net localgroup administrators %_username% /delete
好的一点背景知识我是使用批处理文件的新手。我正在尝试创建一个新用户,分配给管理员组,然后将当前用户降级为标准帐户。这都是本地的,将远程完成。我让它工作,所以创建了新用户并添加了管理员帐户,但我需要获取当前用户名并以某种方式在最后一个命令中调用它。以下是我目前的情况,请大家帮忙。
net user "USERNAME" "PASSWORD" /add /comment:"COMMENT" /passwordchg:NO
wmic useraccount where "name='USERNAME'" set passwordexpires=FALSE
net localgroup administrators "USERNAME" /add
timeout /t 20 /nobreak
wmic.exe /node:127.0.0.1 ComputerSystem Get Username
net localgroup administrators %username% /delete
wmic.exe /node:127.0.0.1 ComputerSystem Get Username > username.txt
for /f "delims=" %%A in ('type username.txt') DO SET MYUSER=%%A
del username.txt
net localgroup test %MYUSER% /delete
在下一个代码片段中,for
循环是:
%%a
检索用户名(在第二个令牌中,%%b
)%%c
删除值 returned 中的结尾回车符 return (wmic
行为:每个输出行以0x0D0D0A
而不是常见的结尾0x0D0A
)
注意 _
%_username%
中的前导下划线:不要覆盖系统环境变量 %username%
for /f "tokens=1* delims==" %%a in (
'wmic /node:127.0.0.1 ComputerSystem Get Username /value'
) do for /f "delims=" %%c in ("%%~b") do set "_username=%%c"
echo %_username%
net localgroup administrators %_username% /delete