use*_*150 8 ram batch-file cpu-usage
我正在创建一个简单的脚本,输出当前登录的用户,当前系统的CPU使用率和可用内存?
我已设法让当前用户登录,但是是否可以获得CPU使用率和内存?
到目前为止这是我的代码.
@echo off
for /f "tokens=3 delims=\" %%i in ("%USERPROFILE%") do (set USER=%%i) 2>&1
echo "Logged On User: %USER%"
echo.
pause
Run Code Online (Sandbox Code Playgroud)
为了获得cpu使用,我尝试了这个命令,但它似乎没有工作.
for /f "skip=1" %p in ('wmic cpu get loadpercentage') do
echo %p%
Run Code Online (Sandbox Code Playgroud)
首先,从批处理文件运行时,for循环变量需要两个百分比符号 - %%p
其次,你需要回应%%p,而不是%p%:
for /f "skip=1" %%p in ('wmic cpu get loadpercentage') do echo %%p
Run Code Online (Sandbox Code Playgroud)
从命令行:
for /f "skip=1" %p in ('wmic cpu get loadpercentage') do echo %p
Run Code Online (Sandbox Code Playgroud)
您始终可以使用该systeminfo命令,但随后将被迫经历一个简短的加载屏幕
set totalMem=
set availableMem=
set usedMem=
REM You need to make a loop
for /f "tokens=4" %%a in ('systeminfo ^| findstr Physical') do if defined totalMem (set availableMem=%%a) else (set totalMem=%%a)
set totalMem=%totalMem:,=%
set availableMem=%availableMem:,=%
set /a usedMem=totalMem-availableMem
Echo Total Memory: %totalMem%
Echo Used Memory: %usedMem%
Run Code Online (Sandbox Code Playgroud)
这应该正是你想要的。可以轻松修改此代码以显示虚拟内存。(使用set totalMem=%totalMem:,=%andset availableMem=%availableMem:,=%可以去掉变量中的逗号。)
莫娜