我需要做的是向现有的批处理文件中添加几行,以便它根据机器名称采取不同的行动。
我们有一个标准化的命名方案,其中机器名称的前三个字母表示机器类型和位置。对于其中三个机器前缀,我想运行命令,对于其余的,我不想。
到目前为止我所得到的是,像这样的命令将找到机器名称中的字符并返回名称,或者根据它是否匹配而不返回任何内容:
echo %COMPUTERNAME% | FIND /I "UKD"
使用这样的循环将对多个名称执行相同的操作:
FOR %%A IN (UKD UKL USD) DO echo %COMPUTERNAME% | FIND /C /I "%%A"
我还没搞清楚如何在IF
语句或类似语句中使用这两个语句的输出。有人能帮我吗?
答案1
首先从机器名称中提取前三个字符,例如:
SET Name=%computername%
SET FirstThreeChars=%computername:~0,3%
然后使用 FirstThreeChars 变量运行 IF 循环。