Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/batch-file/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Batch file 获取注册表项的值,如果Value=something,则继续执行IF语句*_Batch File - Fatal编程技术网

Batch file 获取注册表项的值,如果Value=something,则继续执行IF语句*

Batch file 获取注册表项的值,如果Value=something,则继续执行IF语句*,batch-file,Batch File,这是我正在使用的代码。我想说的是,如果计算机名=KH-TC*转到end并退出,如果计算机名=KH-ZC*运行此可执行文件。任何帮助都会很好。谢谢我一点也不懂脚本,所以我在努力完成它。以下是我到目前为止的情况: @echo on REG Query "HKCU\Volatile Environment" /v "ViewClient_Machine_Name" IF %ErrorLevel% EQU "KH-ZC*" GOTO ZEROCLIENT IF %ErrorLevel% EQU "KH-

这是我正在使用的代码。我想说的是,如果计算机名=KH-TC*转到end并退出,如果计算机名=KH-ZC*运行此可执行文件。任何帮助都会很好。谢谢我一点也不懂脚本,所以我在努力完成它。以下是我到目前为止的情况:

@echo on
REG Query "HKCU\Volatile Environment" /v "ViewClient_Machine_Name"
IF %ErrorLevel% EQU "KH-ZC*" GOTO ZEROCLIENT
IF %ErrorLevel% EQU "KH-TC*" GOTO THINCLIENT

GOTO END
:ZEROCLIENT
@ECHO THIS IS ZERO CLIENT
C:\Windows\System32\tsdiscon.exe
GOTO END

:THINCLIENT
@ECHO THIS IS THIN CLIENT
GOTO END

:END
@ECHO THIS IS END
@exit

使用下面的代码,它检查一个选项并在该选项上分支。
errorlevel永远不是一个字符串,而是一个数字

以下是一个命令行中的答案。
&&
是一个构造,当errorlevel为0时,它将从find.exe启动以下命令

@echo on
REG Query "HKCU\Volatile Environment" /v "ViewClient_Machine_Name" |find "KH-ZC" >nul && "C:\Windows\System32\tsdiscon.exe"
使用下面的示例编写代码

@echo on
REG Query "HKCU\Volatile Environment" /v "ViewClient_Machine_Name" |find "KH-ZC" >nul

IF %ErrorLevel% EQU 0 (GOTO ZEROCLIENT) else (GOTO THINCLIENT)

:ZEROCLIENT
@ECHO THIS IS ZERO CLIENT
C:\Windows\System32\tsdiscon.exe
GOTO END

:THINCLIENT
@ECHO THIS IS THIN CLIENT
GOTO END

:END
@ECHO THIS IS END
@exit

+1但我认为KH-TC*的意思是KH-TC必须严格处于起始状态。可能是FINDSTR?@npocmaka你可能是对的,我们必须得到OP的确认。我没有注册表项来检查它-它不是在一个值中,而不是在一行的开头吗?哇,谢谢你们!这真是太棒了,现在几乎可以用了。我需要什么才能在注册表值字符串中找到ZC。例如(KH-ITZC01),如果只寻找ZC?谢谢你的帮助!!您的脚本中有什么不起作用?