[批处理应用]新入域的计算机枚举,显示加域人员

文件名:querycomputer.bat
功能:查找域内未分组的计算机,并显示计算机名和加域的用户
作用:可以实施监视计算机列表,以提醒进行计算机分组,也可审核计算机命名是否规范,确定责任人。
注意事项:批处理运行前,最好先将现有的域内computers容器内的计算机全部按OU分组,脚本运行后会罗列computers容器内的新计算机。
  1. @echo off
  2. echo 域内未分组计算机监视
  3. echo 如果找到计算机,将显示找到的计算机列表,并通过PC喇叭提示。
  4. echo.
  5. cd /d %~dp0 

  6. rem 设置NETBIOS域名
  7. set domain=DOMAINNAME
  8. rem 设置域名
  9. set DC=mydomain
  10. set DC1=com

  11. :loop
  12. set found=0

  13. rem 搜素comouters
  14. for /f %%i in ('dsquery computer CN^=Computers^,DC^=%DC%^,DC^=%DC1%'do set found=1

  15. rem 如果找到计算机,调用显示模块
  16. if %found%==1 call :display
  17. ping -n 600 127.0.0.1 >NUL 2>&1
  18. goto loop
  19. goto :eof

  20. :display
  21. echo %date% %time% found following computers:

  22. rem 读取计算机AD路径,并调用显示信息模块
  23. for /f %%i in ('dsquery computer CN^=computers^,dc^=%DC%^,dc^=%DC1%'do call :info %%i
  24. goto :eof

  25. :info
  26. set dsname=%1
  27. set dsname1=//%DC%.%DC1%/%dsname:"=%

  28. rem 获取计算机名
  29. for /f "tokens=2,3* delims=,=" %%i in ('echo %dsname%'do set name=%%i

  30. rem 显示计算机权限,并显示可以设置DNS信息的权限用户(加域的人),dscals需要安装Support Tools
  31. dsacls %dsname1% |find "%domain%" |find "DNS" >name.txt 2>&1
  32. for /f "tokens=1,2,3*" %%i in (name.txt) do set user=%%j
  33. echo %name%,%user%
  34. rem 记录信息
  35. echo %name%,%user%>>"%date%.csv"

  36. rem beep报警,beep自己写或到网上找
  37. echo.
  38. Beep 1500 500
  39. Beep 500 500
  40. Beep 1500 500
  41. Beep 500 500
  42. Beep 1500 500
  43. Beep 500 500
  44. Beep 1500 500
  45. Beep 500 500
  46. goto :eof

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值