标题: [文本处理] 如何用findstr截取多个字符串而不是多个字符串所在的行 [打印本页]
作者: heike07 时间: 2015-7-10 17:20 标题: 如何用findstr截取多个字符串而不是多个字符串所在的行
例如:a.txt
192.168.1.1 open sfgfgdfsg
a.bat
findstr "[*.*.*.*]" 1.txt >3.txt
但是a。bat执行后,3.txt上显示的是
192.168.1.1 open sfgfgdfsg一行
我想单独截取 192.168.1.1 这样的
作者: bailong360 时间: 2015-7-10 18:51
- for /f %%i in ('findstr "[*\.*\.*\.*]" 1.txt') do >3.txt echo %%i
- type 3.txt
复制代码
作者: heike07 时间: 2015-7-10 21:07
蒽蒽,解决了,可是如果是多行怎么办啊
比如这样:- 192.168.4.1 eterfrdd
- 192.164.4.4 dfcsddsf'
复制代码
作者: CrLf 时间: 2015-7-10 22:19
这种需求用 grep 比较合适,话说楼主的正则写得好像是有问题的- grep -o -P "\d+\.\d+\.\d+\.\d+" 1.txt >3.txt
复制代码
作者: heike07 时间: 2015-7-10 22:31
可是失败啦~
作者: pcl_test 时间: 2015-7-11 08:41
回复 5# heike07
2楼代码改一处>>3.txt
4楼代码下载grep配合使用http://batch-cn.qiniudn.com/tool/2.5.1/grep.exe
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |