中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
作者:
标题: 如何批量删除不包含的用户 上一主题 | 下一主题
czweb
初级用户





积分 75
发帖 75
注册 2009-10-23
状态 离线
『楼 主』:  如何批量删除不包含的用户

我想恢复系统默认的administrator和禁用的guest用户,其它多余的用户全部删除
怎么写会比较好

2010-3-20 22:45
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
HAT
版主





积分 9023
发帖 5017
注册 2007-5-31
状态 离线
『第 2 楼』:  

既然administrator是系统默认,你想咋恢复?



2010-3-20 23:23
查看资料  发短消息 网志   编辑帖子  回复  引用回复
dato
高级用户




积分 916
发帖 377
注册 2004-3-8
状态 离线
『第 3 楼』:  

很久之前有这需求,后来用ntfs禁止nnusr.cpl lusr.msc
%systemroot%\system32\cacls.exe %systemroot%\system32\nusrmgr.cpl /e /d onlyit
%systemroot%\system32\cacls.exe %systemroot%\system32\lusrmgr.msc /e /d onlyit
就基本没这烦恼了

删除用户.cmd
cscript allusername.vbs>%tmp%\a.txt
for /f "tokens=* skip=3" %%i in (%tmp%\a.txt) do find "%%i" userlist.ini||net user /delete "%%i"
pause
allusername.vbs
Set objNetwork = CreateObject("Wscript.Network")
strComputer = objNetwork.ComputerName
Set colAccounts = GetObject("WinNT://" & strComputer & "")
colAccounts.Filter = Array("user")
For Each objUser In colAccounts
    Wscript.Echo objUser.Name
Next
userlist.ini
administrator
guest




http://dato.ys168.com
google search bot
http://dato.minidns.net/
2010-3-21 01:56
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
czweb
初级用户





积分 75
发帖 75
注册 2009-10-23
状态 离线
『第 4 楼』:  

果然是高手,高手都有同样的需求

2010-3-27 03:02
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
czweb
初级用户





积分 75
发帖 75
注册 2009-10-23
状态 离线
『第 5 楼』:  

在你的基础上该了一下,只需要一个文件就可以了
:禁用Administrator以外的所有用户
set f=%temp%\GetAllusername.vbs
echo.>%f%
echo Set objNetwork = CreateObject("Wscript.Network")                        >>%f%
echo strComputer = objNetwork.ComputerName                                >>%f%
echo Set colAccounts = GetObject("WinNT://" ^& strComputer ^& "")        >>%f%
echo colAccounts.Filter = Array("user")                                        >>%f%
echo For Each objUser In colAccounts                                        >>%f%
echo     Wscript.Echo objUser.Name                                        >>%f%
echo Next                                                                >>%f%

set ff=%temp%\GetAllusername.txt
cscript %f%>%ff%

set fff=%temp%\userlist.ini
echo Administrator >%fff%
:删除
:for /f "tokens=* skip=3" %%i in (%ff%) do find "%%i" %fff%||net user /delete "%%i"
:禁用
for /f "tokens=* skip=3" %%i in (%ff%) do find "%%i" %fff%||net user /active:n "%%i"


2010-3-27 03:42
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
pdanniel66
初级用户





积分 68
发帖 64
注册 2009-5-23
状态 离线
『第 6 楼』:  

如何指定Windows DC (2000) 下的OU建立账号 (Bat 与VBS均可 ),谢谢 !

2010-3-27 05:33
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
HAT
版主





积分 9023
发帖 5017
注册 2007-5-31
状态 离线
『第 7 楼』:  

BAT可以实现,调个VBS干啥?



2010-3-28 15:44
查看资料  发短消息 网志   编辑帖子  回复  引用回复
czweb
初级用户





积分 75
发帖 75
注册 2009-10-23
状态 离线
『第 8 楼』:  



  Quote:
Originally posted by HAT at 2010-3-28 15:44:
BAT可以实现,调个VBS干啥?

楼主给的是vbs,bat不会所以将就着用,
net user出来的结果不是一行一个用户名

2010-3-28 19:50
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
pdanniel66
初级用户





积分 68
发帖 64
注册 2009-5-23
状态 离线
『第 9 楼』:  

net user指令可以指定 OU ?

2010-3-28 20:47
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
Hanyeguxing
银牌会员

正在学习中的菜鸟...


积分 1039
发帖 897
注册 2009-3-1
来自 在地狱中仰望天堂
状态 离线
『第 10 楼』:  



  Quote:
Originally posted by czweb at 2010-3-28 19:50:



楼主给的是vbs,bat不会所以将就着用,
net user出来的结果不是一行一个用户名

那就for /f解析他呗



批处理之家 http://bbs.bathome.net/forum-5-1.html
2010-3-28 20:51
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
pdanniel66
初级用户





积分 68
发帖 64
注册 2009-5-23
状态 离线
『第 11 楼』:  

如何指定Windows DC (2000) 下的OU建立账号 (Bat 与VBS均可 ),谢谢 !

2010-5-22 19:43
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
tongzj
初级用户





积分 49
发帖 43
注册 2007-1-20
状态 离线
『第 12 楼』:  

试试我这个笨办法:

@echo off
for /f "skip=4 tokens=1,2,3" %%a in ('net user') do (
  if not "%%a"=="命令成功完成。" (
    if /i not "%%a"=="administrator" (if /i not "%%a"=="guest" net user %%a /delete)
    if /i not "%%b"=="administrator" (if /i not "%%b"=="guest" net user %%b /delete)
    if /i not "%%c"=="administrator" (if /i not "%%c"=="guest" net user %%c /delete)
    )
  )
net user guest /active:no

2010-5-23 08:01
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: