我必须通过批处理脚本找到所有本地组中的所有用户,并且应该重定向到输出文件。
我可以提取一个组并重定向到一个文件。
net localgroup "Administrators" > c:\temp.txt
但我必须获取为以下命令显示的所有组的用户列表。
net localgroup
答案 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"
)