Board logo

标题: [注册表类] 批处理如何获取计算机名前几位字符 [打印本页]

作者: rydzx    时间: 2014-10-22 16:41     标题: 批处理如何获取计算机名前几位字符

本帖最后由 pcl_test 于 2016-9-30 14:11 编辑

需求:取当前计算机名前4位字符串,当此字符串=“AABB”时,执行修改某注册表项值为A,当此字符串=“BBBB”时,执行修改某注册表项为B…………执行完成后退出。
小弟刚到,求大神指教。
作者: DAIC    时间: 2014-10-22 17:01

  1. @echo off
  2. if "%computername:~0,4%" equ "AABB" (
  3.     echo 执行修改某注册表项值为A
  4. ) else if "%computername:~0,4%" equ "BBBB" (
  5.     echo 执行修改某注册表项值为B
  6. )
  7. pause
复制代码

作者: neorobin    时间: 2014-10-22 17:09

本帖最后由 neorobin 于 2014-10-22 17:19 编辑

回复 1# rydzx

某唯顶帖矣, 即离
  1. switch (left(computerName, 4)) {
  2.     case "AABB" : reg add 某注册表 /v 项 /t reg_某类型 /d A /f
  3.     case "BBBB" : reg add 某注册表 /v 项 /t reg_某类型 /d B /f
  4. }
复制代码

作者: rydzx    时间: 2014-10-22 18:43

回复 3# neorobin


    谢谢,但switch 冒似不是批处理的命令吧?
作者: rydzx    时间: 2014-10-22 18:46

本帖最后由 rydzx 于 2014-10-22 18:48 编辑
DAIC 发表于 2014-10-22 17:01



    谢谢.冒似不行.我本意是想机器根据当前机器名自动判断改注册表.获取当前计算机的机器名,
当计算机名前4位为P301时,修改注册表:
    echo 执行修改某注册表项值为2
reg add HKEY_CURRENT_USER\Software\OS-easy\multimedia network teaching system\Student /v Channel /t REG_DWORD /d 2 /f
reg add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services /v ChannelID /t REG_DWORD /d 2 /f

当计算机名前4位为P307时,修改注册表:
    echo 执行修改某注册表项值为3
reg add HKEY_CURRENT_USER\Software\OS-easy\multimedia network teaching system\Student /v Channel /t REG_DWORD /d 3 /f
reg add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services /v ChannelID /t REG_DWORD /d 3 /f

请大神再指点.
作者: DAIC    时间: 2014-10-22 19:00

回复 5# rydzx


    请告诉我哪里不行
作者: rydzx    时间: 2014-10-22 19:10

已经OK了,谢谢大神

@echo off
if "%computername:~0,3%" equ "303" (
    echo 执行修改某注册表项值为2
reg add "HKEY_CURRENT_USER\Software\OS-easy\multimedia network teaching system\Student" /v Channel /t REG_DWORD /d 2 /f
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services" /v ChannelID /t REG_DWORD /d 2 /f

) else if "%computername:~0,3%" equ "307" (
    echo 执行修改某注册表项值为1
reg add "HKEY_CURRENT_USER\Software\OS-easy\multimedia network teaching system\Student" /v Channel /t REG_DWORD /d 1 /f
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services" /v ChannelID /t REG_DWORD /d 1 /f

)




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