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

[文本处理] 一个文本里有很多相同的字母,用批处理怎样解决只找到想要的那个

比如有一个TXT文本是下面这样

MODEL=INTEL
MAC=88-88-88-87-88-88
EMP_NO=D0121456
BTMAC=99-99-99-99-99-98
WMAC=65-65-65-54-54-45


如何用批理,只找到MAC后面的地址,然后赋给它一个变量值。忽略掉BTMAC和WMAC

请各位高手帮忙解答下,谢谢了。

回复 3# CrLf

上面那个貌似没用。。。
下面这个使用太风骚了,这样都可以。我去百度下是什么意思。
谢谢高手。

TOP

回复 2# wankoilz


    谢谢,本人小菜鸟。多谢指教

TOP

本帖最后由 CrLf 于 2014-8-16 00:34 编辑

另外两种常见的办法:
  1. @echo off
  2. for /f "tokens=1* delims==" %%a in (a.txt) do if /i %%a==MAC echo MAC=%%a
  3. pause
复制代码
  1. @echo off
  2. for /f "delims=" %%a in (a.txt) do set "%%a" >nul 2>nul
  3. echo MAC=%MAC%
  4. pause
复制代码

TOP

正好被我看到了,看起来挺简单:
  1. @echo off
  2. for /f "tokens=2 delims==" %%a in ('findstr/i "^MAC=" a.txt') do set 变量名=%%a
  3. pause
复制代码

TOP

返回列表