Board logo

标题: [文本处理] 批处理如何去除文档中的间隔符号 [打印本页]

作者: smtcao008    时间: 2020-8-19 10:43     标题: 批处理如何去除文档中的间隔符号

电脑中使用ipconfig /all > mac.txt
生成的TXT中类似MAC 显示的“   Physical Address. . . . . . . . . : 42-EC-99-BC-C7-58”中符号“-”怎么批量去除,刚进论坛下载学习批处理for应用,现在自己还解不了,请前辈指教!
作者: Batcher    时间: 2020-8-19 10:53

回复 1# smtcao008
  1. @echo off
  2. for /f "tokens=12-17 delims=- " %%a in ('type "mac.txt" ^| findstr /c:"Physical Address"') do (
  3.     echo,%%a%%b%%c%%d%%e%%f
  4. )
  5. pause
复制代码
参考Q-04、Q-05
https://mp.weixin.qq.com/s/6lbb97qUOs1sTyKJfN0ZEQ
作者: smtcao008    时间: 2020-8-19 15:46

回复 2# Batcher


    又回到老问题了,我现在看是看For命令,如果指定echo结果到mac1.txt,因为for它是逐行显示的(也许我描述不对,我理解是每扫到已个MAC后,for会继续扫下一个,这样的意思,真不好友言语描述,但是理解了For的规则,嘻嘻),只会显示第一个MAC在mac1.txt里面,不会显示全部的,怎么全部显示,我也努力学习看看
作者: Batcher    时间: 2020-8-19 16:05

回复 3# smtcao008


test1.bat
  1. @echo off
  2. >"mac1.txt" type nul
  3. for /f "tokens=12-17 delims=- " %%a in ('type "mac.txt" ^| findstr /c:"Physical Address"') do (
  4.     >>"mac1.txt" echo,%%a%%b%%c%%d%%e%%f
  5. )
复制代码
test2.bat
  1. @echo off
  2. (for /f "tokens=12-17 delims=- " %%a in ('type "mac.txt" ^| findstr /c:"Physical Address"') do (
  3.     echo,%%a%%b%%c%%d%%e%%f
  4. ))>"mac1.txt"
复制代码
参考 > 和 >> 的区别:
http://bbs.bathome.net/thread-3296-1-1.html
作者: smtcao008    时间: 2020-8-19 16:17

回复 4# Batcher
我出丑了,忘记了基本的,谢谢管理员!~~~~·




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