Board logo

标题: [文本处理] 批处理find命令如何查找多个字符串/关键字? [打印本页]

作者: wosliming    时间: 2016-7-25 14:05     标题: 批处理find命令如何查找多个字符串/关键字?

各位大虾 ,求指教
  1. for %%a in ("degrees C" "CFM" "RPM") do (
  2.   for /f "delims=" %%b in ('ipmitool !x! sdr^|find %%a') do (
  3.    for /f "tokens=2 delims=|" %%c in ("%%b") do (
  4.      for /f "delims= " %%i in ("%%c") do (
  5.       echo, %%i
  6. ) <nul >>%data%
  7.    )
  8. )
  9. )
复制代码
想知道可以对这段代码 find 可以同时查找"degrees C" "CFM" "RPM" 三个关键字吗?任何一个存在,,or  的关系,

原本的代码要循环执行三次才能得到一个data,,效率太低

求帮忙
作者: gawk    时间: 2016-7-30 08:08

  1. for /f "delims=" %%b in ('ipmitool !x! sdr ^| findstr /c:"degrees C" /c:"CFM" /c:"RPM"') do (
  2.     for /f "tokens=2 delims=|" %%c in ("%%b") do (
  3.         for /f %%i in ("%%c") do (
  4.             echo, %%i
  5.         ) <nul >>%data%
  6.     )
  7. )
复制代码

作者: tiandyoin    时间: 2024-10-3 23:02

回复 2# gawk


    我正要查找 unicode 文件(.lnk文件)中的内容, 又要查找两个不同的关键词,
好像没有简便办法,
findstr 不能用在查找unicode 文件,
find 没有 or 查找语法~难!
作者: Batcher    时间: 2024-10-4 08:13

回复 3# tiandyoin


    请把你的lnk文件上传到网盘,说一下需要find或findstr查找什么内容?我试试




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