保存wmic useraccount where name to variable

时间:2016-04-07 12:26:33

标签: batch-file wmic sid

如何将当前用户的SID保存到变量? 根据类似问题,当前代码如下:

@echo off
for /f %%a in ('wmic useraccount where Name='%username%' get SID') do set "usersid=%%a"
echo %usersid%
exit /b

有没有办法可以将其保存到变量%usersid%? 我相信这是'''围绕%username%。

的标记

3 个答案:

答案 0 :(得分:3)

  <loggingConfiguration name="loggingConfiguration" tracingEnabled="true"
    defaultCategory="Service1">
    <listeners>

在我的机器上,我没有用户名别名。Here's why the additional FOR is needed

答案 1 :(得分:1)

我找到了一个回答的问题,其中包含了执行此操作所需的代码。 Npocmaka接近答案(我没有错误地输入我原来的wmic命令)。

@echo off
for /f "delims= " %%a in ('"wmic useraccount where name='%UserName%' get sid"') do (
   if not "%%a"=="SID" (          
      set myvar=%%a
      goto :loop_end
   )   
)

:loop_end
echo %myvar%

答案 2 :(得分:0)

我简化了第七路加福音(Luth Luke)提供的代码。

@echo off
For /f "tokens=2 delims==" %%# in (
'"wmic useraccount where name="%UserName%" get SID /value"') Do (
echo  %%#) & Pause > nul