Board logo

标题: [文本处理] 批处理如何提取执行指定命令返回结果中的多条特定内容? [打印本页]

作者: 1664    时间: 2016-6-16 09:21     标题: 批处理如何提取执行指定命令返回结果中的多条特定内容?

本帖最后由 pcl_test 于 2016-6-16 11:21 编辑

请教各位大神:
如执行systeminfo命令,我想要导出其中的主机名,处理器,系统型号,物理内存总量这些信息到TXT文本。
使用| find "主机名">>%name%.txt 这个命令只能导出其中一条,有没有办法只查询一次就能导出多条内容的。
作者: GNU    时间: 2016-6-16 09:57

  1. systeminfo | findstr /i /c:"主机名" /c:"处理器" /c:"系统型号" /c:"物理内存总量"
复制代码

作者: pcl_test    时间: 2016-6-16 12:25

搜索字符串不带空格可以这样
@systeminfo|findstr /i "主机名 处理器 系统型号 物理内存总量"&pause
作者: pcl_test    时间: 2016-6-16 12:25

本帖最后由 pcl_test 于 2016-6-16 12:40 编辑

举个栗子
  1. @echo off
  2. systeminfo>%tmp%\$
  3. rem for %%a in ("OS 名称","产品 ID","物理内存总量") do findstr /i /c:"%%~a" %tmp%\$
  4. for /f "delims=" %%a in ('more +5 "%~f0"') do findstr /i /c:"%%a" %tmp%\$
  5. pause&exit
  6. OS 名称
  7. 产品 ID
  8. 物理内存总量
复制代码





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