免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 3047 | 回复: 11
打印 上一主题 下一主题

[SCO UNIX] 文本中,如何删除这么一行,请高手指教 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2004-06-23 14:44 |只看该作者 |倒序浏览
我有个文件如下:
37060800298          f001000037  604950005210220882                      黄家祥           998.00           3176.00              0.00
         38060800298          f001000038  604950005210220899                      吴玉华           903.30           2069.60              0.00
         39060800298          f001000039  604950005210220903                      马忠毛           937.40           2396.80              0.00
         40060800298          f001000040  604950005210220911                      解从荣          1062.10           5475.20              0.00
         41060800298          f001000041  604950005210220920                      张炳荣           342.15            355.80              0.00
                                                                                                页号:1
                                              代发工资成功明细清单   
         42060800298          f001000042  604950005210220938                      张永枢           982.70           2022.40              0.00
         43060800298          f001000043  604950005210220946                      陈广钧          1158.60           1203.20              0.00
我用什么命令能把
  页号:1
                                              代发工资成功明细清单   
这两行删除掉,再一个,如何删除dos考过来的文本,如何去掉行尾的^M(doscp *  *  -M除外)


请高手指教,不胜感激!

论坛徽章:
0
2 [报告]
发表于 2004-06-23 14:47 |只看该作者

文本中,如何删除这么一行,请高手指教

你是要写程序吗?

论坛徽章:
0
3 [报告]
发表于 2004-06-23 14:49 |只看该作者

文本中,如何删除这么一行,请高手指教

不是,我对sed和awk不熟悉,我想应该是一条简单的命令就能够实现吧!

论坛徽章:
0
4 [报告]
发表于 2004-06-23 15:10 |只看该作者

文本中,如何删除这么一行,请高手指教

回复第二个问题,在SCO下用 dtox 命令即可。
dtox a >; b

论坛徽章:
0
5 [报告]
发表于 2004-06-23 15:15 |只看该作者

文本中,如何删除这么一行,请高手指教

多谢d_y_liu!

非常管用!

论坛徽章:
0
6 [报告]
发表于 2004-06-23 17:20 |只看该作者

文本中,如何删除这么一行,请高手指教

使用vi,直接dd就可以了

论坛徽章:
0
7 [报告]
发表于 2004-06-23 18:33 |只看该作者

文本中,如何删除这么一行,请高手指教

文件好大呀,用DD得累死,我试着用
sed -e '/页号/d‘ file |more >;file1
sed -e '/代发工资/d' file1 |more >;file3
办是办到了,有没有好的方法!

论坛徽章:
0
8 [报告]
发表于 2004-06-23 21:42 |只看该作者

文本中,如何删除这么一行,请高手指教

回答第一个问题:
awk '{ if (( $0 !~ /页号/ ) && ( $0 !~ /代发工资/ )) print $0 }' filename >; newfilename
回答第二个问题:
也可以用vi编辑文件,使用替换的功能
命令如下:g/^M/s///g(其中的^M用ctrl+VM输入)

论坛徽章:
0
9 [报告]
发表于 2004-06-24 09:28 |只看该作者

文本中,如何删除这么一行,请高手指教

原帖由 "二月二" 发表:
我有个文件如下:
37060800298          f001000037  604950005210220882                      黄家祥           998.00           3176.00              0.00
         38060800298          f001000038  604950..........

grep -v

论坛徽章:
0
10 [报告]
发表于 2004-06-24 10:47 |只看该作者

文本中,如何删除这么一行,请高手指教

sed "s/^M//" filename | grep -v "页号:1 "|grep -v "代发工资成功明细清单" >;newfile
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP