Трудно сделать расчет вручную.
Вы можете использовать, tasklist
чтобы получить использование памяти.
Пример:
> tasklist /fi "imagename eq opera*" Image Name PID Session Name Session# Mem Usage ========================= ======== ================ =========== ============ opera.exe 5444 Console 1 78840 K opera_crashreporter.exe 8404 Console 1 6308 K opera.exe 8936 Console 1 66708 K opera.exe 7804 Console 1 70344 K opera.exe 2304 Console 1 28200 K opera.exe 4612 Console 1 73640 K opera.exe 8460 Console 1 41168 K
Следующий пакетный файл выполнит сложение за вас и будет отображать результат каждые 60 секунд.
test.cmd:
@echo off setlocal enabledelayedexpansion :start set _mem=0 for /f "skip=3 usebackq tokens=5" %%i in (`tasklist /fi "imagename eq opera*"`) do ( set /a _mem += %%i ) echo Total Memory = !_mem! K rem wait 60 seconds timeout 60 /nobreak goto :start endlocal
Пример:
> test Total Memory = 365464K Waiting for 0 seconds, press CTRL+C to quit ... Total Memory = 365216K Waiting for 51 seconds, press CTRL+C to quit ... ^CTerminate batch job (Y/N)? y
Дальнейшее чтение
- Индекс AZ командной строки Windows CMD
- Категоризованный список команд Windows CMD
- for / f - Циклическая команда против результатов другой команды.
- set - отображать, устанавливать или удалять переменные окружения CMD. Изменения, сделанные с помощью SET, будут сохраняться только в течение текущего сеанса CMD.