Board logo

标题: [其他] 批处理加域问题,验证域用户名和密码正确? [打印本页]

作者: 小智BAT    时间: 2018-9-27 19:32     标题: 批处理加域问题,验证域用户名和密码正确?

各位大神,批处理加域问题,如何验证域用户名和密码正确?我看见有命令加域方法,但不知道如何验证密码正确。
作者: Batcher    时间: 2018-9-27 20:26

把你看到的命令发出来瞅瞅?
作者: 小智BAT    时间: 2018-9-27 21:20

回复 2# Batcher


    wmic computersystem where Name="%COMPUTERNAME%" call JoinDomainOrWorkgroup Name="dxj.com" username="dxj.com\administrator" password="123456" FJoinOptions=1  

这个命令,没测试过,公司有几千台电脑要加域,还有个问题是计算机名规则是P80******(数字是8位数)和N80******(数字是8位数)和P13412356789(手机号码)和N13412356789(手机号码)这样的格式。批处理怎么判断这几种规则的符合?其他不符合。正则不会写。
作者: 小智BAT    时间: 2018-9-28 13:31     标题: 批处理if怎么判断2个条件只有一个成立?

本帖最后由 小智BAT 于 2018-9-28 13:33 编辑

批处理if怎么判断2个条件只有一个成立?求大神写个代码。计算机名规则是P80******(数字是8位数)和N80******(数字是8位数)和P13412356789(手机号码)和N13412356789(手机号码)这样的格式。批处理怎么判断这几种规则的符合?其他不符合。正则不会写。
  1. rem 判断计算机名
  2. set xx=%computername:~1,8%
  3. rem set nn=%computername:~1,11%
  4. echo %xx%|findstr/xx  "^8[0-9][0-9][0-9][0-9][0-9][0-9][0-9]" >nul&& set pcnum=8 || goto pcname
  5. rem echo %nn%|findstr/nn  "^1[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]" >nul&& set pcnum=11||echo 计算机名不符合(不是手机号码)
  6. if %pcnum%==8 (ECHO √. 计算机名符合!计算机名为:%computername%) else (echo no)
  7. if %xx%==%username% (ECHO √. 计算机名和用户名对应!用户名为:%xx%) else ( goto usernamenew )
复制代码

作者: 小智BAT    时间: 2018-9-29 10:34

回复 2# Batcher


    老大。能不能帮忙看看怎么判断
作者: flashercs    时间: 2018-9-29 19:56

就是用findstr的正则判断字符串格式?
作者: 小智BAT    时间: 2018-9-29 20:07

回复 6# flashercs


    反正能实现功能就行。请各位大神帮帮忙。。。。
作者: flashercs    时间: 2018-9-29 21:01

本帖最后由 flashercs 于 2018-9-29 21:10 编辑

回复 7# 小智BAT
  1. rem 判断计算机名
  2. @echo off
  3. set xx=%computername%
  4. echo %xx%|findstr "^[PN]80[0-9][0-9][0-9][0-9][0-9][0-9]$">nul&&(
  5.     set pcnum=8
  6.     echo 计算机名符合8位
  7. )||echo %xx%|findstr "^[PN]1[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]$">nul&&(
  8.     set pcnum=11
  9.     echo 计算机名符合11位
  10. )||echo 计算机名既不符合8位,也不符合11位。
  11. rem echo %nn%|findstr/nn  "^1[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]" >nul&& set pcnum=11||echo 计算机名不符合(不是手机号码)
  12. REM if %pcnum%==8 (ECHO √. 计算机名符合!计算机名为:%computername%) else (echo no)
  13. REM if %xx%==%username% (ECHO √. 计算机名和用户名对应!用户名为:%xx%) else ( goto usernamenew )
  14. pause
复制代码

作者: 小智BAT    时间: 2018-9-29 23:56

回复 8# flashercs


   谢谢大神。。。




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2