找回密码
 加入网盟
分割线
华夏网管联盟 技术分享 查看内容
GG赞助广告banner

批处理bat条件判断运行之机器名判断

2020-11-22 12:15| 发布者: 不离不弃| 查看: 1578| 评论: 2|原作者: xwca4l

摘要: 之前我们在前两节课中讲过条件判断则运行之进程判断,以及条件判则运行之ping判断。今天我们就来说下用机器名来做判断条件,根据不同机器名来做不同操作。可以让机器尾号为2的运行净网先锋,尾号3的不运行之类的。首先在系统自带的环境变量中有计算机名自带的变量,变量名为COMPUTERNAME。系统自带的环境变量可以在开始--运行--输入cmd--在cmd里面输入set然后回车,就可以看到自带的环境变量了。环境变量在批处理中可以直接使用, ...
之前我们在前两节课中讲过条件判断则运行之进程判断,以及条件判则运行之ping判断。今天我们就来说下用机器名来做判断条件,根据不同机器名来做不同操作。可以让机器尾号为2的运行净网先锋,尾号3的不运行之类的。
首先在系统自带的环境变量中有计算机名自带的变量,变量名为COMPUTERNAME。系统自带的环境变量可以在开始--运行--输入cmd--在cmd里面输入set然后回车,就可以看到自带的环境变量了。环境变量在批处理中可以直接使用,用%%包围起来就可以了,例如COMPUTERNAME,在批处理中表示为%COMPUTERNAME%
代码如下
代码如下
-------------------------------------------------------------------
  1. @echo off

  2. echo.

  3. echo.

  4. set /p weihao="请输入你要匹配的计算机尾号"

  5. if %COMPUTERNAME:~-1% == %weihao% (goto yes) else (goto no)

  6. :yes

  7. echo 说明这台机器的尾号确实是我们要找的&pause

  8. exit

  9. :no

  10. echo 说明这台机器的尾号不是我们要找的&pause

  11. exit
复制代码
------------------------------------------------------------------
代码详解
set /p weihao="请输入你要匹配的计算机尾号"
这句意思是说,请输入一个值赋予给变量%weihao%,set /a为运算 set /p为赋值
if %COMPUTERNAME:~-1% == %weihao% (goto yes) else (goto no)
如果,变量%COMPUTERNAME%的最后一位字符等于%weihao%,那么则执行标记为yes的语句,否则执行标记为no的语句
这里面%COMPUTERNAME:~-1%意思为取变量%COMPUTERNAME%,-1位置的字符,从左往右是正数叠加。从右往左是负数叠加,例如
set str=123456789
第一个字符为:%str:~0,1%
头两个字符为:%str:~0,2%
头5个字符为:%str:~0,5%
最后一个字符为:%str:~-1%
倒数第4个字符为:%str:~-4,1%
倒数第4个及其之后的字符为:%str:~-4%
倒数第4个及其之后的1个字符为:%str:~-4,2%
倒数第4个及其之后的2个字符为:%str:~-4,3%
:yes
echo 说明这台机器的尾号确实是我们要找的&pause
这段代码意思是声明标记yes区段,:为标记的意思
echo为显示字符串的意思,你可以把这段改成其他的操作

鲜花
鲜花
握手
握手
雷人
雷人
路过
路过
鸡蛋
鸡蛋

相关阅读

官方推荐

相关分类

GG赞助广告