免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
论坛 程序设计 Shell 请教!
最近访问板块 发新帖
查看: 1272 | 回复: 7
打印 上一主题 下一主题

请教! [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-06-01 11:20 |只看该作者 |倒序浏览
ab cd  ef gh ij
怎么能把上面的一行一个个循环输出?
就是一次输出一个ab
然后cd
然后ef
...
..
谢谢大家啦!!!

论坛徽章:
1
荣誉会员
日期:2011-11-23 16:44:17
2 [报告]
发表于 2006-06-01 11:25 |只看该作者

论坛徽章:
0
3 [报告]
发表于 2006-06-01 11:32 |只看该作者
我是菜鸟,用awk写了半天不行呀

论坛徽章:
1
荣誉会员
日期:2011-11-23 16:44:17
4 [报告]
发表于 2006-06-01 11:36 |只看该作者
awk -v OFS="\n" '$1=$1""'

论坛徽章:
0
5 [报告]
发表于 2006-06-01 11:43 |只看该作者

回复 4楼 woodie 的帖子

楼上的,谢谢啦!可是为什么一下子全输出了呢?
ab
cd
ef
gh
ij

论坛徽章:
1
荣誉会员
日期:2011-11-23 16:44:17
6 [报告]
发表于 2006-06-01 11:56 |只看该作者
OFS                ->       输出时使用的字段分割符,设为\n,则输出每字段后换行。
$1=$1""         ->       给第一个字段赋值,强迫awk用新的OFS重组记录,否则新OFS不起作用。其实只要$1=$1就可以了。
更保险的写法是:
awk -v OFS='\n' '{$1=$1;print}'

论坛徽章:
1
荣誉会员
日期:2011-11-23 16:44:17
7 [报告]
发表于 2006-06-01 12:02 |只看该作者
这样也可以:
awk -v OFS='\n' '($1=$1)||1'

论坛徽章:
1
荣誉会员
日期:2011-11-23 16:44:17
8 [报告]
发表于 2006-06-01 12:04 |只看该作者
或者这样容易看懂些:
awk -v FS="" '{gsub(" ", "\n");print}'
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP