中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
作者:
标题: 求教!批处理问题! 上一主题 | 下一主题
klazhen
初级用户





积分 32
发帖 10
注册 2006-9-1
状态 离线
『楼 主』:  求教!批处理问题!

大家好.我想编辑一个批处理文件,但是想不起来思路应该如何开始
我批处理文件的具体意思是:把一个文本内容进行编辑一下
比如:1.txt的内容是

-------------------------------------------------------------------------------
Performing Time: 9/1/2006 23:39:4 --> Normal Scan: About To Scan 131071 IP Using 1000 Threads
222.43.4.13      1433  Open            
222.43.26.110    1433  Open            
222.43.26.188    1433  Open            
222.43.27.246    1433  Open            
222.43.35.56     1433  Open            
222.43.48.73     1433  Open            
222.43.48.80     1433  Open            

                                                                                                              Scan 131071 IPs Complete In 0 Hours 7 Minutes 22 Seconds. Found 73 Hosts
-------------------------------------------------------------------------------
我想只留下里面的ip地址,请高手赐教一下,感激不劲,谢谢

2006-9-1 23:56
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
NaturalJ0
银牌会员




积分 1181
发帖 533
注册 2006-8-14
状态 离线
『第 2 楼』:  

for /f "skip=1" %%i in (1.txt) do echo %%i>>2.txt
坏了,没注意到IP底下还有文件内容。

[ Last edited by NaturalJ0 on 2006-9-2 at 00:17 ]

2006-9-2 00:16
查看资料  发短消息 网志   编辑帖子  回复  引用回复
klazhen
初级用户





积分 32
发帖 10
注册 2006-9-1
状态 离线
『第 3 楼』:  

谢谢你,我的意思是只保留ip地址.至于1433 open也都去掉

2006-9-2 00:20
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
NaturalJ0
银牌会员




积分 1181
发帖 533
注册 2006-8-14
状态 离线
『第 4 楼』:  

中间的 1433 和 open 不是固定的吧,有可能是其它值吧?
ip 上面一行肯定是 Performing Time 开头?
ip 下面一行肯定是 Scan 开头?

2006-9-2 00:27
查看资料  发短消息 网志   编辑帖子  回复  引用回复
namejm
荣誉版主

batch fan


积分 5226
发帖 1737
注册 2006-3-10
来自 成都
状态 离线
『第 5 楼』:  


@echo off
cd.>2.txt
for /f "skip=1 tokens=1" %%i in (1.txt) do (
    if /i not "%%i"=="scan" >>2.txt echo %%i
)
start 2.txt




尺有所短,寸有所长,学好CMD没商量。
考虑问题复杂化,解决问题简洁化。
2006-9-2 00:29
查看资料  发短消息 网志   编辑帖子  回复  引用回复
9527
银牌会员

努力做坏人


积分 1185
发帖 438
注册 2006-8-28
来自 北京
状态 离线
『第 6 楼』:  

如果按照楼主所说,以下已经足够了
for /f %? in ('find /i "open" ^<test.txt') do @echo %?

[ Last edited by pip on 2006-9-3 at 00:17 ]



我今后在论坛的目标就是做个超级坏人!!!
2006-9-3 00:15
查看资料  发短消息 网志  OICQ (329429)  编辑帖子  回复  引用回复
namejm
荣誉版主

batch fan


积分 5226
发帖 1737
注册 2006-3-10
来自 成都
状态 离线
『第 7 楼』:  

  pip的代码十分精练,突破了用for语句的常规思维,充分利用条件来写代码,还用重定向来屏蔽find输出格式中的线条,高。



尺有所短,寸有所长,学好CMD没商量。
考虑问题复杂化,解决问题简洁化。
2006-9-3 00:51
查看资料  发短消息 网志   编辑帖子  回复  引用回复
vkill
金牌会员





积分 4103
发帖 1744
注册 2006-1-20
来自 甘肃.临泽
状态 离线
『第 8 楼』:  



  Quote:
Originally posted by pip at 2006-9-3 00:15:
如果按照楼主所说,以下已经足够了
for /f %? in ('find /i "open" ^<test.txt') do @echo %?

[ Last edited by pip on 2006-9-3 at 00:17 ]

高,重定向学下,回去用上

2006-9-3 02:55
查看资料  发送邮件  访问主页  发短消息 网志   编辑帖子  回复  引用回复
klazhen
初级用户





积分 32
发帖 10
注册 2006-9-1
状态 离线
『第 9 楼』:  

谢谢各位给我的帮助

2006-9-3 05:10
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
pengfei
银牌会员




积分 1218
发帖 485
注册 2006-7-21
来自 湖南.娄底
状态 离线
『第 10 楼』:  

兄弟扫1433服务器溢出, 其实你用文本文件中的替换功能就可以轻易实现了.
查找: 1433  Open  
替换:
选全部替换~

2006-9-3 23:49
查看资料  发送邮件  发短消息 网志  OICQ (573381312)  编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: