您尚未登录。

#1 2014-02-27 11:48:06

28hua
会员
注册时间: 2013-09-28
帖子: 15
个人网站

格式化一列文本为多列

将下列文本格式化为 4 列,每列 11 行

USSR
Canada
China
USA
Brazil
India
Mexico
France
Japan
Germany
England
8649
3852
3705
3615
3286
1267
762
211
144
96
94
275
25
1032
237
134
746
78
55
120
61
56
Asia
North America
Asia
North America
South America
Asia
North America
Europe
Asia
Europe
Europe

结果要像下面这样,求个简单方法

USSR    8649    275     Asia
Canada  3852    25      North America
China   3705    1032    Asia
USA     3615    237     North America
Brazil  3286    134     South America
India   1267    746     Asia
Mexico  762     78      North America
France  211     55      Europe
Japan   144     120     Asia
Germany 96      61      Europe
England 94      56      Europe

离线

#2 2014-02-27 12:25:27

依云
会员
所在地: a.k.a. 百合仙子
注册时间: 2011-08-21
帖子: 8,485
个人网站

Re: 格式化一列文本为多列

就你给的数据,column -c 70 即可。

离线

#3 2014-02-27 17:38:32

28hua
会员
注册时间: 2013-09-28
帖子: 15
个人网站

Re: 格式化一列文本为多列

百合仙子 说:

就你给的数据,column -c 70 即可。

这么简洁。。
能否把列间距再调小一点

离线

#4 2014-02-27 19:12:37

依云
会员
所在地: a.k.a. 百合仙子
注册时间: 2011-08-21
帖子: 8,485
个人网站

Re: 格式化一列文本为多列

这样?
column -c70 | sed 's/\t\t/\t/g'

离线

页脚