更新时间2021-02-20 14:34:38
@echo off&setlocal enabledelayedexpansionset/a j=0for /f "skip=1 tokens=1-2 delims= " %%a in ('wmic process where "name='chrome.exe'" get WorkingSetSize^,Handle') do (if !j!==0 (set/a k=%%a,j+=1,p=%%a) else (if %%b lss !k! set p=%%a ))echo 占用小的chrome进程pid是:%b%taskkill /f /pid %b%pause大家帮我看看我的批处理怎么不能用啊?
你的程序有多个错,不可能运行的
首先,你的b变量根本没有赋值,而p是多余的变量(赋值了没有用)
另外,你的判断是求占有最大的进程而非最小
以下是改好可以运行的
@echo off&setlocal enabledelayedexpansion
set /a j=0
for /f "skip=1 tokens=1-2 delims= " %%a in ('wmic process where "name='chrome.exe'" get WorkingSetSize^,Handle') do (
if !j!==0 (
set /a k=%%a,j+=1,b=%%a
) else (
if %%b gtr !k! set b=%%a
)
)
echo 占用小的chrome进程pid是:%b%
taskkill /f /pid %b%
pause