免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: szqimao
打印 上一主题 下一主题

[文本处理] shell进行文件换行和替换处理的问题(有实际案例) [复制链接]

论坛徽章:
0
11 [报告]
发表于 2012-10-22 19:47 |只看该作者
L_kernel 发表于 2012-10-19 11:47
楼主泄露了用户隐私。哈哈~~


我已经把卡号,金额等去掉了,只留个名字应该还好吧。

论坛徽章:
32
处女座
日期:2013-11-20 23:41:20双子座
日期:2014-06-11 17:20:43戌狗
日期:2014-06-16 11:05:00处女座
日期:2014-07-22 17:30:47狮子座
日期:2014-07-28 15:38:17金牛座
日期:2014-08-05 16:34:01亥猪
日期:2014-08-18 13:34:25白羊座
日期:2014-09-02 15:03:55金牛座
日期:2014-11-10 10:23:58处女座
日期:2014-12-02 09:17:52程序设计版块每日发帖之星
日期:2015-06-16 22:20:002015亚冠之塔什干火车头
日期:2015-06-20 23:28:22
12 [报告]
发表于 2012-10-22 20:40 |只看该作者
本帖最后由 yestreenstars 于 2012-10-22 20:41 编辑

你运行我那条命令
awk '{printf $0}' urfile | sed 's/:LST:/\n&/g'
之所以会产生下面这种情况,我想你应该多打了一个n(见红字):awk '{printf $0}' urfile | sed 's/:LST:/\nn&/g'
n:LST:00000006000000000010000005840301584000016  301584000016  陈荣场n:LST:00000084000000000025000005840301584000016  301584000016  姚军凯n:LST:00000149000000000070000005840301584000016  301584000016  郑猛发n:LST:00000260000000000006000005840301584000016  301584000016  刘韦君n:LST:00000281000000000010000005840301584000016  301584000016  卜静文n:LST:00000290000000000015000005840301584000016  301584000016  苏锦n:LST:00000296000000000024000005840301584000016  301584000016  蔡炳沂

论坛徽章:
0
13 [报告]
发表于 2012-10-22 21:02 |只看该作者
yestreenstars 发表于 2012-10-22 20:40
你运行我那条命令
awk '{printf $0}' urfile | sed 's/:LST:/\n&/g'
之所以会产生下面这种情况,我想你应 ...


嗯,我是在AIX系统中运行的,明天上班的时候再试一下吧,但是我想我应该是没有多打一个n的。
上班的时候上不了论坛,只有回到家才能回复你了。

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
14 [报告]
发表于 2012-10-22 23:11 |只看该作者
szqimao 发表于 2012-10-22 19:47
我已经把卡号,金额等去掉了,只留个名字应该还好吧。
开个玩笑,那点东西看不出一点东西来的。

论坛徽章:
2
技术图书徽章
日期:2013-10-08 08:52:55水瓶座
日期:2013-11-22 12:16:09
15 [报告]
发表于 2012-10-23 09:11 |只看该作者
新手也来凑热闹。data2保存LZ给的范例
cat data2 |tr -d '\n'  | awk  -F':LST:' '{for(i=2;i<NF;i++)print ":LST:" $i}'

论坛徽章:
1
IT运维版块每日发帖之星
日期:2015-09-01 06:20:00
16 [报告]
发表于 2012-10-23 15:15 |只看该作者
回复 10# szqimao


    银行也就代表money,共同关注。

论坛徽章:
0
17 [报告]
发表于 2012-10-23 15:52 |只看该作者
回复 5# seesea2517


    我也比较关心~

论坛徽章:
0
18 [报告]
发表于 2012-10-23 19:54 |只看该作者
本帖最后由 szqimao 于 2012-10-23 22:16 编辑
yestreenstars 发表于 2012-10-22 20:40
你运行我那条命令
awk '{printf $0}' urfile | sed 's/:LST:/\n&/g'
之所以会产生下面这种情况,我想你应 ...


我又试了,确实不对,可能sed中不能用\n转义吧。

论坛徽章:
0
19 [报告]
发表于 2012-10-23 19:57 |只看该作者
525478495 发表于 2012-10-23 09:11
新手也来凑热闹。data2保存LZ给的范例
cat data2 |tr -d '\n'  | awk  -F':LST:' '{for(i=2;i


嗯,这样写法也正确。

论坛徽章:
0
20 [报告]
发表于 2012-10-23 19:59 |只看该作者
在银行干活也跟在其它公司干的差不多,不过在银行掌握业务流程比掌握技术更重要些。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP