![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-05 10:26 |
共 48,038 主题排行 / 350,123 发帖 / 今日 1 篇 / 48,251 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » [求助]如何用BAT自动搜索TXT文档内的多个特定字符? |
| 可打印版本 1,202 / 11 |
| 第1楼 flybird2020 | 发表于 2007-07-25 16:30 |
| 初级用户 发帖 52 积分 103 | |
|
[求助]如何用BAT自动搜索TXT文档内的多个特定字符? 每隔一段时间我就要备份一次日志
并要在日志中搜索是否有特定字样的字符<如某个IP:222.222.222.222> 手动要查的话太多了,不方便 能不能写个BAT 一次性查出来是否在此次日志中含有我要搜索的字符呢? 谢谢高手 小菜太菜了 PS:补充一下 我是要在多个IP集合中查找一定数量的IP 比如在1000个IP中找我指定的50个IP是否存在 [ Last edited by flybird2020 on 2007-7-26 at 01:47 PM ] |
|
| 第2楼 slore | 发表于 2007-07-25 20:59 |
| 铂金会员 发帖 2,478 积分 5,212 | |
|
findstr命令
|
|
| 第3楼 wudixin96 | 发表于 2007-07-25 21:12 |
| 银牌会员 发帖 931 积分 1,928 | |
|
灌水灌水,论坛什么时候开的?
真是不知道没论坛的日子,不知道怎么过的。 |
|
| 第4楼 Runas | 发表于 2007-07-25 21:21 |
| 初级用户 发帖 38 积分 74 | |
|
这样?
@echo off & setlocal ENABLEDELAYEDEXPANSION cd /d "c:\日志备份" ::存放日志文件的目录 for /f "delims=" %%i in ('dir /a-d /b *.log') do ( for /f "delims=" %%a in ('type "%%i"') do ( set str=%%a echo !str:.={! | findstr .*{.*{.*{.*>nul && echo %%i:!str! ) ) pause |
|
| 第5楼 wudixin96 | 发表于 2007-07-25 21:25 |
| 银牌会员 发帖 931 积分 1,928 | |
|
这个点还是不要替换为{好啊,
反正findstr的正则也支持.的啊。 |
|
| 第6楼 Runas | 发表于 2007-07-25 21:44 |
| 初级用户 发帖 38 积分 74 | |
|
可是,他要求的IP是类似192.168.1.1的格式,其中的"."不是和findstr的表达式一样了吗?不替换的话貌似批处理会将IP格式"."当成findstr的通配符表达式来处理了。
我是菜鸟,只想到这种笨方法。^_^! [ Last edited by Runas on 2007-7-25 at 09:48 PM ] |
|
| 第7楼 wudixin96 | 发表于 2007-07-25 21:54 |
| 银牌会员 发帖 931 积分 1,928 | |
|
在正则中.是表示匹配任何字符。
但是是可以转义的。\.就可以转义出来了 而且匹配的是数字,就不要用.来匹配了。 [ Last edited by wudixin96 on 2007-7-25 at 09:56 PM ] |
|
| 第8楼 Runas | 发表于 2007-07-25 22:35 |
| 初级用户 发帖 38 积分 74 | |
|
\.转义可以理解,但是不用.来匹配的话,难道IP用[0-9]\.[0-9]\.[0-9]\.[0-9]这样来表示吗?
|
|
| 第9楼 wudixin96 | 发表于 2007-07-25 22:38 |
| 银牌会员 发帖 931 积分 1,928 | |
|
用.的话,岂不是aaa.bbb.vvv.rrr也匹配?
|
|
| 第10楼 Runas | 发表于 2007-07-25 22:45 |
| 初级用户 发帖 38 积分 74 | |
|
这个我也明白,但是我不太晓得用findstr的正则,兄能否按照LZ的要求,写一份范例供我们这些小菜参考一下?
|
|
| 第11楼 flybird2020 | 发表于 2007-07-26 13:46 |
| 初级用户 发帖 52 积分 103 | |
|
E。。。
我是要在多个IP中去查少量IP 比如在1000个IP中查找我需要找的50个IP 如果这个日志里有,就告诉我哪个有就好了 |
|
| 第12楼 jckjuc | 发表于 2007-07-26 23:04 |
| 初级用户 发帖 23 积分 48 | |
|
看到这些高手在讨论,真是学到不少东东啊。
真是感谢让我成为论坛的一分子啊。 |
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |