我如何监控一个小于或大于(值)的数字列表,并在值在范围内时执行操作?

2022-01-23 23:46:29 标签 windowsbatch-filecmd64-bitmonitor

我正在尝试编写一个win 10批处理脚本,监控CSV 5行中数字的输出,如111。07 112。56 123。66等。输出每60秒发生一次。

(我可以选择将其存储在alog.txt and call that in the script)在脚本中调用它)

我还希望输出的数字是绝对值而不是小数。

然后输入小于或等于或大于…(LEQ 100 and GEQ 140 -> right?). If<和GEQ 140 ->→对吧?)。If in range 在范围内then immediate立即重新启动shutdown -r -f -t 00 else go to :s其他的go to :start again一次。

我必须承认,我不知道我正在做什么,我尝试的一切只是立即退出脚本,即使当做暂停或超时后,每一步。

编辑:这是到目前为止我所知道的。

:start
FOR /F "tokens=* USEBACKQ" %%i IN ('nvidia-smi.exe --format=csv,nounits,noheader --query-gpu=power.draw') do (SET var=%%i%)
echo %%var%
if %%var% LEQ 100 (echo reboot) else (goto :start)
If %%var% GEQ 140 (echo reboot) else (goo :start) 

第一行应该将(' nvidia-Smi。exe 。。。。 ')的5个输出行存储在变量var中。

Nvidia-smi。exe输出:

117.00
123.34
116.77
128.65
119.45

第二个应该做if else比较和重启(现在只是echo)我不明白我如何可以构建if else到for循环。

Nvidia-smi。exe似乎不被执行,但只是被打印出来,但当我在cmd中运行命令时,它执行。删除cvsMountiesnoheader之间的逗号

我也不明白如何不重复自己在if leq…else 。。。。

输出:

C:\Users\admin\Desktop\monitor.bat
C:\Users\admin>FOR /F "tokens=* USEBACKQ" %i IN ('nvidia-smi.exe --format csv nounits noheader --query-gpu power.draw') do (SET var=%i )
C:\Users\admin>(SET var=nvidia-smi.exe --format csv nounits noheader --query-gpu power.draw )
C:\Users\admin>echo %var
%var
Syntaxerror.
C:\Users\admin>    if %varstart)

# # #谢谢@Mofi

通过你的演示,我成功地做对了。

:begin
@echo off
Timeout 57
if exist log.txt del log.txt 
nvidia-smi.exe --format=csv,nounits,noheader --query-gpu=power.limit --filename=log.txt
for /F "tokens=* delims=" %%I in (log.txt) do for %%J in (%%I) do if %%~nJ LEQ 100 (echo %%J is less or equal 100 && shutdown /r /f /t 60) else if %%~nJ GEQ 140 (echo %%J is greater or equal 140 && shutdown /r /f /t 60) else (echo %%J% is between 100 and 140)
goto :begin

输出:

117.00 is between 100 and 140
148.00 is greater or equal 140
126.00 is between 100 and 140
96.00 is Less or equal 100
127.00 is between 100 and 140
阅读全文

▼ 版权说明

相关文章也很精彩
推荐内容
更多标签
相关热门
全站排行
随便看看

错说 cuoshuo.com —— 程序员的报错记录

部分内容根据CC版权协议转载;网站内容仅供参考,生产环境使用务必查阅官方文档

辽ICP备19011660号-5

×

扫码关注公众号:职场神器
发送: 1
获取永久解锁本站全部文章的验证码