【发布时间】:2013-10-23 12:52:52
【问题描述】:
我正在尝试在批处理文件中获取最高内存消耗的进程 ID。到目前为止,我已经达到了,但它不起作用。
@echo off
set old=0
for /f "TOKENS=1" %%a in ('wmic PROCESS where "Name='cmd.exe'" get WorkingSetSize ^| findstr [0-9]') do if %%a GTR %old% (set old=%%a)
echo %old%
【问题讨论】:
-
您需要
Setlocal ENABLEDELAYEDEXPANSION并将%old%替换为!old!。解释见set /?。 -
仅作记录,使用普通批处理最多只能比较 2 GB
-
感谢 Butter,Foxdrive:最大 2GB,这意味着批处理变量不能保存超过 2*1024*1024*8 的数值。是吗?
标签: batch-file if-statement for-loop