免费注册 查看新帖 |

Chinaunix

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

怎样用脚本修改文件中每一行的一个字段 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-02-15 10:42 |只看该作者 |倒序浏览
文件内容如下(选取文件的一段):

47|12/19/2005|08:00|08:30|501|5012|248|1|1|283|1|65|3|2|2|2|
47|12/19/2005|08:00|08:30|501|5012|248|2|1|283|1|9|1|1|1|1|
47|12/19/2005|08:00|08:30|501|5012|248|3|1|283|1|76|3|2|2|2|
47|12/19/2005|08:00|08:30|501|5012|208|1|1|283|1|20|1|0|0|0|
47|12/19/2005|08:00|08:30|501|5012|208|2|1|283|1|86|6|2|2|1|
47|12/19/2005|08:00|08:30|501|5012|208|3|1|283|1|23|3|1|1|1|
47|12/19/2005|08:00|08:30|501|5012|228|1|1|283|1|48|2|1|0|0|
47|12/19/2005|08:00|08:30|501|5012|228|2|1|283|1|53|1|1|1|1|
47|12/19/2005|08:00|08:30|501|5012|228|3|1|283|1|157|4|4|4|4|
47|12/19/2005|08:00|08:30|501|5012|228|1|1|201|1|0|0|0|0|0|
47|12/19/2005|08:00|08:30|501|5012|228|2|1|201|1|0|0|0|0|0|
47|12/19/2005|08:00|08:30|501|5012|228|3|1|201|1|0|0|0|0|0|
47|12/19/2005|08:00|08:30|501|5012|255|1|1|283|1|90|7|7|7|7|
47|12/19/2005|08:00|08:30|501|5012|255|2|1|283|1|49|0|0|0|0|
47|12/19/2005|08:00|08:30|501|5012|255|3|1|283|1|43|3|2|2|2|
47|12/19/2005|08:00|08:30|501|5012|235|1|1|283|1|132|6|6|6|6|
47|12/19/2005|08:00|08:30|501|5012|235|2|1|283|1|179|7|5|3|2|
47|12/19/2005|08:00|08:30|501|5012|235|3|1|283|1|121|4|3|2|2|
47|12/19/2005|08:00|08:30|501|5012|235|1|1|201|1|0|0|0|0|0|

文件中的字段用“|”分开,我想对第13段的数据做修改,要求如果这个数值大于1,就执行减1。
执行完脚本对每一行第13段数据进行修改并保存文件,文件名不变。


script该怎么写啊??? k-shell.

论坛徽章:
0
2 [报告]
发表于 2006-02-15 10:48 |只看该作者
awk -F"|" 'BEGIN{OFS="|"}{if($13>1)$13--;print}'

论坛徽章:
0
3 [报告]
发表于 2006-02-15 11:02 |只看该作者
这只是处理一行吧,我要能把file.txt每一行都处理一遍。


而且你这个是不是c shell,最好是在kshell下能用的。

[ 本帖最后由 白日遛驴 于 2006-2-15 11:03 编辑 ]
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP