我有USB中继,我可以通过cmd文件ON.cmd和OFF.cmd来控制它。我想创建TOOGLE.cmd文件。
我可以通过发送hidusb-relay-cmd id=YWM8T STATUS
及其返回State: R1=OFF R2=OFF
来检查中继状态。如果hidusb-relay-cmd id=YWM8T ON ALL
如何发送State: R1=OFF R2=OFF
,hidusb-relay-cmd id=YWM8T OFF ALL
发送State: R1=ON R2=ON
?
答案 0 :(得分:1)
试试这个:
@echo off
cd %tmp%
hidusb-relay-cmd id=YWM8T STATUS|findstr "OFF">sh.tmp
set "out="
set /P out=<sh.tmp
del /q /f sh.tmp
if defined out goto :def
hidusb-relay-cmd id=YWM8T OFF ALL
goto :exit
:def
hidusb-relay-cmd id=YWM8T ON ALL
:exit
工作原理:
OFF
命令的输出中查找hideusb-relay-cmd
并将其重定向到临时文件。out
变量(如果你要在命令行使用它,那就非常必要了。)out
设置为临时文件的内容。out
是否有任何值。如果有,goto :def
并跳过hidusb-relay-cmd id=YWM8T OFF ALL
命令。如果没有,则不会跳过它。