Windows 8.1 批量检查计算机是否属于工作组,并在必要时进行更改

Windows 8.1 批量检查计算机是否属于工作组,并在必要时进行更改

我得到了 SYSTEMINFO | FIND /I "DOMAIN:",它显示它是否属于域或工作组。但我试图弄清楚如何获取结果,如果它不是 Company.LLC,则转到 :JoinWorkgroup。我想它应该看起来像这样:

IF SYSTEMINFO | FIND /I "DOMAIN:" NOT = "Company.LLC" THEN GOTO :JoinWorkgroup
IF SYSTEMINFO | FIND /I "DOMAIN:" = "Company.LLC" THEN GOTO :NextVerification

我可以让 IF NOT EXIST 处理目录,但不知道如何将它与提示实用程序的结果联系起来。

答案1

首先,从命令行启动下一个命令:

for /F "tokens=1*" %G in ('SYSTEMINFO ^| FIND /I "DOMAIN:"') do @echo %G %H

在批处理脚本中使用时,请将百分号%: 改为%G并将%%G改为。然后,批处理脚本中适用的代码片段可能如下所示(请保留行距):%H%%H

set "sDomain=WORKGROUP"
for /F "tokens=1*" %%G in ('SYSTEMINFO ^| FIND /I "DOMAIN:"') do set "sDomain=%%~H"
IF "%sDomain%"=="Company.LLC" (
    GOTO :NextVerification 
) ELSE (
    GOTO :JoinWorkgroup
)

或者,如果您更喜欢没有任何辅助变量的解决方案:

for /F "tokens=1*" %%G in ('SYSTEMINFO ^| FIND /I "DOMAIN:"') do ( 
  IF "%%~H"=="Company.LLC" (
      GOTO :NextVerification 
  ) ELSE (
      GOTO :JoinWorkgroup
  )
)

编辑(虽然被接受):%%~H~ 参数修饰符删除周围的引号 ( ")(如果有)。

资源:

相关内容