Batch file 正在尝试成批连续报告CPU时钟速度
我正在尝试做一个CPU时钟速度跟踪器,但是我需要一些代码方面的帮助Batch file 正在尝试成批连续报告CPU时钟速度,batch-file,cpu,wmic,Batch File,Cpu,Wmic,我正在尝试做一个CPU时钟速度跟踪器,但是我需要一些代码方面的帮助 setlocal enableextensions enabledelayedexpansion :a for /f %%a in ('copy /Z "%~dpf0" nul') do set "ASCII_13=%%a" set /p "=!ASCII_13!" <NUL wmic cpu get CurrentClockSpeed goto a 不是这个(我试图使用的代码输出了这个): 你能帮帮我吗?wmic有一个
setlocal enableextensions enabledelayedexpansion
:a
for /f %%a in ('copy /Z "%~dpf0" nul') do set "ASCII_13=%%a"
set /p "=!ASCII_13!" <NUL
wmic cpu get CurrentClockSpeed
goto a
不是这个(我试图使用的代码输出了这个):
你能帮帮我吗?
wmic
有一个难看的行尾(另一个CR
),经常制造麻烦。在您的情况下,它为您完成以下工作:
@echo off
setlocal EnableDelayedExpansion
:loop
for /f "delims=" %%a in ('wmic cpu get LoadPercentage /value ^|find "="') do (
set "value=%%a"
<nul set /p "=!value:~0,-1! !value:~-1!"
)
goto :loop
@echo关闭
setlocal EnableDelayedExpansion
:循环
对于/f“delims=”%%a in('wmic cpu get LoadPercentage/value^ | find“=”)do(
设置“值=%%a”
@echo关闭
setlocal EnableDelayedExpansion
对于('copy/Z'%~dpf0“nul')中的/f%%a,请设置“ASCII_13=%%a”
回波电流钟速
:a
对于('wmic cpu get CurrentClockSpeed')中的/F“令牌=1,2”%%a,如果“%%b”neq“设置”值=%%a,则执行此操作
设置/p“=%value%!ASCII_13!”在标签:a
后使用CLS
命令。输出的第一次迭代显示为U-Load:
。当上一个值较长时(旧的<1234,新的=
98`显示9834
),这使我们的代码几乎相同)
(只是获得CR
的不同方法)@Stephan:是的,但是你的方法在每次迭代中运行find.exe
文件加上两份cmd.exe
文件,所以我的方法更有效!;)
只要涉及wmci
,我就不在乎效率<代码>;)代码>
CurrentClockSpeed
2401
CurrentClockSpeed
2401
CurrentClockSpeed
2401
CurrentClockSpeed
2401
@echo off
setlocal EnableDelayedExpansion
:loop
for /f "delims=" %%a in ('wmic cpu get LoadPercentage /value ^|find "="') do (
set "value=%%a"
<nul set /p "=!value:~0,-1! !value:~-1!"
)
goto :loop
@echo off
setlocal EnableDelayedExpansion
for /f %%a in ('copy /Z "%~dpf0" nul') do set "ASCII_13=%%a"
echo CurrentClockSpeed
:a
for /F "tokens=1,2" %%a in ('wmic cpu get CurrentClockSpeed') do if "%%b" neq "" set "value=%%a"
set /p "=%value% !ASCII_13!" <NUL
goto a