解压缩Windows服务器中所有本地组中的所有用户

时间:2018-04-30 14:23:46

标签: batch-file batch-processing

我必须通过批处理脚本找到所有本地组中的所有用户,并且应该重定向到输出文件。

我可以提取一个组并重定向到一个文件。

net localgroup "Administrators" > c:\temp.txt

但我必须获取为以下命令显示的所有组的用户列表。

net localgroup

1 个答案:

答案 0 :(得分:1)

通常只运行net localgroup会返回带有起始星号*的组。所以这应该有效:

@echo off
setlocal enabledelayedexpansion
for /f "tokens=*" %%a in ('net localgroup') do (
  set "var=%%a"
  set var=!var:~1!
  net localgroup "!var!" >> someoutput.txt
)

修改

根据您的评论,我们可以简单地检查创建的文件是否具有正确的行数,如果没有,则将其删除。

@echo off
setlocal enabledelayedexpansion
 for /f "tokens=*" %%a in ('net localgroup') do (
   set "var=%%a"
   set var=!var:~1!
   net localgroup "!var!" > "!var!.txt"
  for /f %%i in ('type "!var!.txt" ^|find "" /v /c ') do set /a count=%%i
   if !count! lss 10 del /Q "!var!.txt"
 )