[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[系统相关] 批处理怎样扫描内存总量、已用、可用,以MB为单位?

批处理扫描内存以MB为单位
显示可用内存,已用内存,内存总量
wmic2000用不了
谢谢各位大神!

  1. @echo off
  2. setlocal enabledelayedexpansion
  3. call :Scan
  4. echo %bet%
  5. pause
  6. :Scan
  7. echo 开始扫描....
  8. set k=1024000
  9. set low=100
  10. set hig=2048
  11. for /f %%a in ('wmic os get FreePhysicalMemory^|findstr "[0-9]"') do set A=%%a
  12. for /f %%a in ('wmic os get TotalVisibleMemorySize^|findstr "[0-9]"') do set B=%%a
  13. set/a c=%b%-%a%
  14. set/a c=%b%/%c%
  15. if %b% leq %low% set ls=K&set/a b=%b%*%k%&set/a a=%a%*%k%&goto :ls
  16. if %b% gtr %hig% set ls=G&set/a b=%b%/%k%&set/a a=%a%/%k%&goto :ls
  17. set ls=M
  18. :ls
  19. set d=正在使用的内存:%%%c%
  20. set f=总内存:%b%
  21. set g=可用内存:%a%
  22. set "bet=%d%_%f% !ls!B_%g% !ls!B"
  23. goto:eof
复制代码
转载自bathome,


目录 2 NAME:硬件扫描器
链接: https://pan.baidu.com/s/1LtL1NgX2nwPjdmiyFDEMJg?pwd=cg89 提取码: cg89

TOP

本帖最后由 czjt1234 于 2022-11-26 19:28 编辑
  1. Set oWMI = GetObject("Winmgmts:\\.\Root\Cimv2")
  2. Set oSWbemObjectSet = oWMI.InstancesOf("Win32_OperatingSystem")
  3. For Each oSWbemObject In oSWbemObjectSet
  4.     Wsh.Echo oSWbemObject.FreePhysicalMemory, oSWbemObject.TotalVisibleMemorySize
  5. Next
复制代码
  1. @echo off
  2. for /f "tokens=1,2 delims= " %%i in ('CScript.exe /nologo D:\test.vbs') do (
  3.     set a=%%i
  4.     set b=%%j
  5. )
  6. pause
复制代码

QQ 20147578

TOP

回复  wins


    你确定vbs可以运行,还是mem命令可以运行?
czjt1234 发表于 2022-11-25 16:21


vbs可以
+++++++++++++++++++++

TOP

回复 10# wins


    你确定vbs可以运行,还是mem命令可以运行?

QQ 20147578

TOP

RE: 批处理怎样扫描内存总量、已用、可用,以MB为单位?

回复 8# czjt1234
您好
如何把结果存储到变量呢?=

TOP

本帖最后由 czjt1234 于 2022-11-25 12:26 编辑

没有win2000环境,也不知道支持vbs和wmi不

mem 命令显示有关已使用和可用内存区域以及当前加载到 MS-DOS 子系统内存中的程序的信息
mem 命令可用于 MS-DOS 以及所有 32 位版本的 Windows
mem 命令在 64 位版本的 Windows 中不可用

QQ 20147578

TOP

本帖最后由 czjt1234 于 2022-11-25 12:12 编辑
  1. Set oWMI = GetObject("Winmgmts:\\.\Root\Cimv2")
  2. Set oSWbemObjectSet = oWMI.InstancesOf("Win32_OperatingSystem")
  3. For Each oSWbemObject In oSWbemObjectSet
  4.     Wsh.Echo oSWbemObject.FreePhysicalMemory
  5.     Wsh.Echo oSWbemObject.TotalVisibleMemorySize
  6. Next
复制代码


vbs可以不?
实在要批处理读取,可以再加个批处理

  1. @echo off
  2. CScript.exe /nologo D:\test.vbs
  3. pause
复制代码

QQ 20147578

TOP

systeminfo 不知道这个外部命令有没有

TOP

本帖最后由 wins 于 2022-11-24 15:42 编辑

也是,你给我解决问题是好的
下回认真审题~

TOP

回复 4# wins


    你可以去找版主举报

TOP

本帖最后由 wins 于 2022-11-24 15:42 编辑

回复 3# pd1

TOP

wmic os get FreePhysicalMemory
wmic os get TotalVisibleMemorySize

TOP

本帖最后由 ANSL 于 2022-11-24 10:31 编辑

晕,我和他有同样的问题,刚要发帖求助!
本人已死,不用联系,要联系下来联系~

TOP

返回列表