中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » 论坛回收站 » 急等!请教高手给个批处理
作者:
标题: 急等!请教高手给个批处理 上一主题 | 下一主题
GUYI
新手上路





积分 4
发帖 4
注册 2009-5-8
状态 离线
『楼 主』:  急等!请教高手给个批处理

我有一文件(txt)
内容为
2=01 03 ,
贰=05 0 6,
叁=07 08,
。。。。很多的也很杂
我想把2=、贰=、叁=分别提取到三个新的文件中。
急等!谢谢啦!!!!!!!!!

2009-12-18 17:22
查看资料  发短消息 网志   编辑帖子  回复  引用回复
740011611
初级用户





积分 96
发帖 83
注册 2009-6-4
来自 信阳
状态 离线
『第 2 楼』:  

@echo off
for /f "delims=0" %%i in (1.txt) do echo %%i>>result.txt
pause

我只会把它输出到一个文件里,不会输到三个不同的文件里。等待高人......

2009-12-18 18:01
查看资料  发送邮件  发短消息 网志  OICQ (740011611)  编辑帖子  回复  引用回复
huahua0919
银牌会员




积分 1608
发帖 780
注册 2007-10-7
状态 离线
『第 3 楼』:  

你描述的貌似不很清楚,如果仅仅提取那三行到三个文本时很容易的

2009-12-18 18:30
查看资料  发送邮件  访问主页  发短消息 网志   编辑帖子  回复  引用回复
GUYI
新手上路





积分 4
发帖 4
注册 2009-5-8
状态 离线
『第 4 楼』:  

我的数据本来就在一个文本文件里的,不只三行,上千行的。
2=05 27,
2=10 32,
2=11 21,
2=05 25,
2=31 33,
贰=05 06,
贰=01 05,
2=12 32,
2=02 32,
叁=07 08,
2=16 23,
贰=17 28,
贰=17 23,
2=10 24,
。。。。。。。。。。。。。

2009-12-18 18:34
查看资料  发短消息 网志   编辑帖子  回复  引用回复
Hanyeguxing
银牌会员

正在学习中的菜鸟...


积分 1039
发帖 897
注册 2009-3-1
来自 在地狱中仰望天堂
状态 离线
『第 5 楼』:  

按照你在四楼提供的规律,可以这样写:


提取到一个新文件中
@echo off&setlocal enabledelayedexpansion
for /f %%i in (1.txt) do (set i=%%i
echo !i:~0,2!)>>guxing.txt
pause
提取到不同的新文件中,以han_!n!.txt命名,!n!为从1开始的整数数列
@echo off&setlocal enabledelayedexpansion
for /f %%i in (1.txt) do (set i=%%i&set /a n+=1
>han_!n!.txt echo !i:~0,2!)
pause
提取到不同的新文件中,以han_!n!.txt命名,!n!为从1开始的整数数列,不包含重复的内容:
@echo off&setlocal enabledelayedexpansion
for /f %%i in (1.txt) do (set i=%%i
set hanye_!i:~0,2!#=guxing)
for /f "delims=#" %%i in ('set ^|find /i "hanye_"') do (set i=%%i&set/a n+=1
>han_!n!.txt echo !i:~6!)
[ Last edited by Hanyeguxing on 2009-12-18 at 19:59 ]



批处理之家 http://bbs.bathome.net/forum-5-1.html
2009-12-18 19:13
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
qinchun36
高级用户

据说是李先生


积分 609
发帖 400
注册 2008-4-23
状态 离线
『第 6 楼』:  


@echo off
for %%i in ("2=" "贰=" "叁=") do find %%i 你的文本文档.txt > %%i.txt
echo 完成。
pause>nul




┏━━━━━━┓
┃据说是李先生┃
┠──────┨
┃*ntRSS┃
┗━━━━━━┛
2009-12-18 19:17
查看资料  发送邮件  发短消息 网志  OICQ (182484135)  编辑帖子  回复  引用回复

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


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



论坛跳转: