免费注册 查看新帖 |

Chinaunix

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

awk如果打印从$1到$NF的所有列 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-03-30 15:00 |只看该作者 |倒序浏览
当然不是指用$0
awk 'BEGIN{RS=""}{for(a in NF);print $a}'  ufile
这样貌似不行....请教...

论坛徽章:
0
2 [报告]
发表于 2009-03-30 15:06 |只看该作者
貌似不能这么用a in NF ..因为NF不是一个序列...
是不是可以用for(a in `seq 1 NF`) = =有点像当然了..请教一般在不知道会分割成多少field的情况下 怎么让他排列出所有的field?

论坛徽章:
0
3 [报告]
发表于 2009-03-30 15:07 |只看该作者

回复 #1 cxfcxf 的帖子

学C的语法用for循环就行了。

论坛徽章:
0
4 [报告]
发表于 2009-03-30 15:08 |只看该作者

回复 #2 cxfcxf 的帖子

你当然知道有多少filed,因为有NF可以查看。

[ 本帖最后由 seu2002 于 2009-3-30 15:21 编辑 ]

论坛徽章:
0
5 [报告]
发表于 2009-03-30 15:08 |只看该作者
[linuxboy823@fc8 shell]$ cat 3.txt
0011AAA 200.00 20050321
0012BBB 300.00 20050621
0013DDD 400.00 20050622
0014FFF 500.00 20050401
[linuxboy823@fc8 shell]$ awk 'BEGIN{RS=""}{for(a=1;a<=NF;a++) print $a}' 3. txt
0011AAA
200.00
20050321
0012BBB
300.00
20050621
0013DDD
400.00
20050622
0014FFF
500.00
20050401

是不是这个意思啊?

论坛徽章:
0
6 [报告]
发表于 2009-03-30 15:09 |只看该作者
awk '{ for( i=1; i<=NF; i++) print $i}'    urfile

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
7 [报告]
发表于 2009-03-30 15:14 |只看该作者
用 Perl
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP