Board logo

标题: [系统相关] 求批处理修改获取内存条代码使得结果在一行内 [打印本页]

作者: jshuanya    时间: 2024-1-18 20:56     标题: 求批处理修改获取内存条代码使得结果在一行内

首先感谢showcode大神给我的如下代码,已经很完美了。可以获取内存条信息,多条内存也可以,获取到的结果范例为:
+++8GB+++
+++2400+++
+++8GB+++
+++3200+++
能否修改一下,使得结果为8GB,频率2400,8GB,频率3200在一行里显示呢
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /f "tokens=1-2 delims==" %%a in ('wmic MemoryChip get Capacity^,Speed /value ^| findstr "="') do (
  4.     if "%%a" == "Capacity" (
  5.         for %%c in (%%b) do (
  6.             set "MemCap=%%c"
  7.         )
  8.     ) else if "%%a" == "Speed" (
  9.         for %%c in (%%b) do (
  10.             set "MemSpd=%%c"
  11.         )
  12.         for /f %%i in ('powershell "!MemCap!/(1024*1024*1024)"') do (
  13.             set "MemCap=%%i"
  14.         )
  15.         echo +++!MemCap!GB+++
  16.         echo +++!MemSpd!+++
  17.     )
  18. )
  19. pause
复制代码

作者: newswan    时间: 2024-1-18 21:15

回复 1# jshuanya
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /f "tokens=1-2 delims==" %%a in ('wmic MemoryChip get Capacity^,Speed /value ^| findstr "="') do (
  4.     if "%%a" == "Capacity" (
  5.         for %%c in (%%b) do (
  6.             set "MemCap=%%c"
  7.         )
  8.         for /f %%i in ('powershell "!MemCap!/(1024*1024*1024)"') do (
  9.             set "MemCap=%%i"
  10.         )
  11. set mem=!mem!  容量!MemCap!GB
  12.     ) else if "%%a" == "Speed" (
  13.         for %%c in (%%b) do (
  14.             set "MemSpd=%%c"
  15.         )
  16. set mem=!mem!,频率!MemSpd!
  17.     )
  18. )
  19. echo %mem%
  20. pause
复制代码

作者: jshuanya    时间: 2024-1-19 09:04

回复  jshuanya
newswan 发表于 2024-1-18 21:15



    谢谢你,可以用。




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2