用于检查域中计算机名称的简单批处理脚本

时间:2013-11-20 10:38:04

标签: windows batch-file

前提:我不是程序员。

我需要做一个简单的批处理脚本来检查域中的计算机名称,如果它是正确的名称,则执行另一个批处理脚本(我已经使用它),否则它会检查下一个计算机的名称。

我想做点什么,但这对我来说很难。

If %computername%=VDSXXXXXXD
   then c:\XXXXX\XXXX.bat
   echo VDSXXXXD FOUND
Else %computername%=VDSYYYYYD
     then c:\XXXXXX\ZZZ.bat
     echo VDYYYYYD FOUND
Else %computername%=VDSYYYYYD
     then c:\XXXXXX\ZZZZ.bat
     echo VDSZZZZZD FOUND
goto 
:End

2 个答案:

答案 0 :(得分:2)

你非常接近非程序员,这应该适合你(虽然有一个包含所有计算机名称的文本文件将是最佳的。)

If "%computername%"=="VDSXXXXXXD" (
start c:\XXXXX\XXXX.bat
echo VDSXXXXD FOUND
goto :eof
)
if "%computername%"=="VDSYYYYYD" (
start c:\XXXXXX\ZZZ.bat
echo VDYYYYYD FOUND
goto :eof
)
if "%computername%"=="VDSYYYYYD" (
start c:\XXXXXX\ZZZZ.bat
echo VDSZZZZZD FOUND
goto :eof
) 

:eof
Exit

这应该对你有用,

莫纳

答案 1 :(得分:1)

这是一种简单直接的方法。

如果名称和批处理文件之间存在关系,则循环将更容易维护。

@echo off
If %computername%=VDSXXXXXXD (echo VDSXXXXD FOUND & c:\XXXXX\XXXD.bat)
If %computername%=VDSXXXXXXE (echo VDSXXXXE FOUND & c:\XXXXX\XXXE.bat)
If %computername%=VDSXXXXXXF (echo VDSXXXXF FOUND & c:\XXXXX\XXXF.bat)
If %computername%=VDSXXXXXXG (echo VDSXXXXG FOUND & c:\XXXXX\XXXG.bat)
If %computername%=VDSXXXXXXH (echo VDSXXXXH FOUND & c:\XXXXX\XXXH.bat)