中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 关于"sed"命令合并文本文件上下行的问题
« [1] [2] [3] »
作者:
标题: 关于"sed"命令合并文本文件上下行的问题 上一主题 | 下一主题
youaoyi
初级用户





积分 154
发帖 67
注册 2007-10-31
状态 离线
『第 16 楼』:  

可能是Unix系统里面拷过来的,只能得到这种文本。
无法在最初提取数据时处理,因为是上面发下来的。

[ Last edited by youaoyi on 2008-8-17 at 04:23 PM ]

2008-8-17 16:21
查看资料  发短消息 网志   编辑帖子  回复  引用回复
HAT
版主





积分 9023
发帖 5017
注册 2007-5-31
状态 离线
『第 17 楼』:  

我暂时也没有想到什么办法,帮你在QQ群里面问问吧。



2008-8-17 16:35
查看资料  发短消息 网志   编辑帖子  回复  引用回复
youaoyi
初级用户





积分 154
发帖 67
注册 2007-10-31
状态 离线
『第 18 楼』:  

谢谢  谢谢  拜托了

2008-8-17 16:36
查看资料  发短消息 网志   编辑帖子  回复  引用回复
HAT
版主





积分 9023
发帖 5017
注册 2007-5-31
状态 离线
『第 19 楼』:  

还有其他包含不可见字符的行吗?我想看看那些不可见字符是不是相同的。



2008-8-17 16:40
查看资料  发短消息 网志   编辑帖子  回复  引用回复
youaoyi
初级用户





积分 154
发帖 67
注册 2007-10-31
状态 离线
『第 20 楼』:  

因为周末只带回来一个数据文本

暂时在这个文本中找到另外这些

请审阅。

附件 1: 另外一些样本.rar (2008-8-17 17:00, 360 bytes,下载次数: 7)
2008-8-17 17:00
查看资料  发短消息 网志   编辑帖子  回复  引用回复
HAT
版主





积分 9023
发帖 5017
注册 2007-5-31
状态 离线
『第 21 楼』:  


change a2.txt /from "&H0D7C" /to "&H7C"
sed "/^$/d" a2.txt|sed -e :a -e "/\\$/N; s/\\\n//; ta"|sed ":a;$!N;s/\n|/|/;ta;P;D"
change.exe
http://upload.cn-dos.net/img/427.zip



2008-8-17 18:08
查看资料  发短消息 网志   编辑帖子  回复  引用回复
youaoyi
初级用户





积分 154
发帖 67
注册 2007-10-31
状态 离线
『第 22 楼』:  

change.exe
http://upload.cn-dos.net/img/427.zip

此网页打不开,下载不了。辛苦了。

[ Last edited by youaoyi on 2008-8-17 at 06:22 PM ]

2008-8-17 18:20
查看资料  发短消息 网志   编辑帖子  回复  引用回复
HAT
版主





积分 9023
发帖 5017
注册 2007-5-31
状态 离线
『第 23 楼』:  

试试这个
change.exe
http://bbs.bathome.cn/attachment.php?aid=218



2008-8-17 18:28
查看资料  发短消息 网志   编辑帖子  回复  引用回复
radem
高级用户

CMD感染者


积分 691
发帖 383
注册 2008-5-23
状态 离线
『第 24 楼』:  



  Quote:
Originally posted by HAT at 2008-8-17 06:08 PM:
change a2.txt /from "&H0D7C" /to "&H7C"
sed "/^$/d" a2.txt|sed -e :a -e "/\\$/N; s/\\\n//; ta"|sed ":a;$!N;s/\n|/|/;ta;P;D"
...

我的测试结果:
1.不可见字符成功删除
2.有/和|字符的没有达到楼主效果(SED 4.1.5)
另:
change 后 a2.txt 变成 A2.TXT 了,能否保持小写呢



2008-8-17 18:48
查看资料  发短消息 网志   编辑帖子  回复  引用回复
youaoyi
初级用户





积分 154
发帖 67
注册 2007-10-31
状态 离线
『第 25 楼』:  

下载完毕

是否这个 change 命令不支持变量的? 运行失败了。

我测试时候是用的程式在附件中,抑或是哪里我写错了?

附件 1: test.rar (2008-8-17 19:04, 492 bytes,下载次数: 3)
2008-8-17 19:04
查看资料  发短消息 网志   编辑帖子  回复  引用回复
youaoyi
初级用户





积分 154
发帖 67
注册 2007-10-31
状态 离线
『第 26 楼』:  

因为有很多文本,所以采用了上面这种拖拉文件来执行的方式。

2008-8-17 19:05
查看资料  发短消息 网志   编辑帖子  回复  引用回复
HAT
版主





积分 9023
发帖 5017
注册 2007-5-31
状态 离线
『第 27 楼』:  

很多个文件,这样可以满足要求吗?
@echo off
for %%a in ("*.txt") do (
  change "%%a" /from "&H0D7C" /to "&H7C"
  sed "/^$/d" "%%a"|sed -e :a -e "/\\$/N; s/\\\n//; ta"|sed ":a;$!N;s/\n|/|/;ta;P;D"
)




2008-8-17 19:54
查看资料  发短消息 网志   编辑帖子  回复  引用回复
HAT
版主





积分 9023
发帖 5017
注册 2007-5-31
状态 离线
『第 28 楼』:  Re 24楼

我和楼主都测试成功了,可能是的测试方法有问题吧^_^
保持小写:
ren A.TXT a.txt




2008-8-17 19:56
查看资料  发短消息 网志   编辑帖子  回复  引用回复
youaoyi
初级用户





积分 154
发帖 67
注册 2007-10-31
状态 离线
『第 29 楼』:  

麻烦给看一下25搂的附件,是不是有什么问题?

因为之前都是通过这种方式来处理的。

楼上的程式确实可以处理正确。

但是有三个问题:

1、如何将同目录下各文本文件处理后生成对应源文件名称的新文档?

2、好像是不支持长文件名的处理;

3、通过“>新文档.txt”这种方式输出的话,新文本开头会有下面的字符:

Invalid keyboard code specified
CHANGE pgm  by Bruce Guthrie, (c)2001 U.S. Dept of Commerce   Revised 03/10/2001
Input file:  原始数据.TXT /-S /ATTR=-H-S-R
Flag file:   None created
Temp file:   C:\1\{CHANGE}.TMP
Output file: Overwriting input file
Change from >
|<, to >|<
Other settings: /I /BINARY /-TRIM /-ZAPNULL /-VERIFY
20:15:17: Reading C:\1\原始数据.TXT --> C:\1\{CHANGE}.TMP
    Bytes read:  11,045,417   Left:           0   Changes made:      23
    Copying temporary file over original file...11,045,394 bytes
20:15:17: Done

当然,问题是已经解决大半了,在此深深表示谢意。

[ Last edited by youaoyi on 2008-8-17 at 08:39 PM ]

2008-8-17 20:20
查看资料  发短消息 网志   编辑帖子  回复  引用回复
HAT
版主





积分 9023
发帖 5017
注册 2007-5-31
状态 离线
『第 30 楼』:  

1. 处理之前copy一下就行了
2. 哪个命令不支持长文件名的处理?
3. 如果你用的中文版系统,可以在change之前加一句:
chcp 437>nul & graftabl 936>nul




2008-8-17 22:13
查看资料  发短消息 网志   编辑帖子  回复  引用回复
« [1] [2] [3] »
请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


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



论坛跳转: