找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 31491|回复: 10

[文件操作] [已解决]批处理获取物理内存总量的问题

[复制链接]
发表于 2019-3-27 10:43:02 | 显示全部楼层 |阅读模式
求助批处理获取物理内存的问题

因用systeminfo组件缺失,所以改用fbinst。
如下代码正常运行:
        fbinst --meminfo-t ^ |find "物理内存总量"

用如下代码时没准确执行(闪退):
  1. for /f "tokens=2" %%a in ('fbinst --meminfo-t ^ |find "物理内存总量"') do set "str=%%a"
  2. set "str=%str:,=%"


  3. if %str% lss 2100 (
  4.     goto menu1
  5. ) else (goto menu2)
复制代码
............................

该如何修改  望大神邦忙 谢谢。

评分

参与人数 1PB +2 收起 理由
Batcher + 2 感谢给帖子标题标注[已解决]字样

查看全部评分

发表于 2019-3-27 11:17:33 | 显示全部楼层
把 @echo off 删掉
代码保存为 C:\test.bat
打开一个CMD窗口,执行命令:
C:\test.bat

这样可以看到详细的报错信息或者线索。如果自己看不懂,就发出来大家一起看看。
发表于 2019-3-27 11:18:25 | 显示全部楼层
^ |
这两个字符中介的空格需要删掉
 楼主| 发表于 2019-3-27 11:34:02 | 显示全部楼层
回复 2# Batcher



没有@echo off

好像问题出在下半部份 上半部份没有闪退  不知道是不是 ??

f %str% lss 2100 (
    goto menu1
) else (goto menu2)
 楼主| 发表于 2019-3-27 11:38:25 | 显示全部楼层
回复 3# Batcher

空格试了  没作用
发表于 2019-3-27 12:23:56 | 显示全部楼层
"tokens=2 delims=:"
发表于 2019-3-27 13:08:38 | 显示全部楼层
回复 4# 大地


    变量str没有取到值,需要给for命令加上delims=:指定冒号作为列分隔符。
 楼主| 发表于 2019-3-27 13:09:17 | 显示全部楼层
回复 6# zaqmlp

   谢谢 测试成功,而且还比systeminfo快了很多,好开心

重新整理一下,代码如下:

color 2f
mode con: cols=70 lines=20

for /f "tokens=2 delims=:" %%a in ('fbinst --meminfo-t^|find "物理内存总量"') do set "str=%%a"
set "str=%str:,=%"

if %str% lss 1100 (
    goto menu1
) else (goto menu2)

:menu1
md f:\AAAAAAA

:menu2
md f:\BBBBBBB
发表于 2019-3-27 13:22:26 | 显示全部楼层
回复 8# 大地


md f:\AAAAAAA
goto :eof

如果这里不结束:menu1的话,它会继续往下执行:menu2
 楼主| 发表于 2019-3-27 14:09:39 | 显示全部楼层
回复 9# Batcher

  确实如此  需要加上 goto :eof
  谢谢大师
发表于 2019-3-28 09:02:00 | 显示全部楼层
fbinst 在第三方库 中没找到,论坛也没搜到。请问一下楼主,有没有这个官网地址?或者比较全的软件包(想看看说明,--help 里面居然没找到 --meminfo 和 --meminfo-t 参数,但是确实能用)
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-21 02:24 , Processed in 0.032941 second(s), 18 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表