首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将文件格式化为4列?

如何将文件格式化为4列?
EN

Stack Overflow用户
提问于 2010-11-27 16:22:27
回答 2查看 866关注 0票数 1
代码语言:javascript
复制
cat file  
01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16

我试着用

代码语言:javascript
复制
column -c 4 file 

来获得一个包含4列的输出,但它不起作用--我只是得到了与输入相同的结果。

我误解了专栏的手册页吗?

第二个问题:-s标志的参数应该采用什么格式?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-11-27 23:43:50

试一试:

代码语言:javascript
复制
fold -w 12 file

数字12是数据列数*一列中的字符数(两个数字+一个空格)。-w选项用于根据字符列指定屏幕宽度。

column命令不能解决这个问题,因为它的目的是格式化报纸样式的列。

这几乎就是你想要的工作方式:

代码语言:javascript
复制
sed 's/ /\n/g' file | column -xc 35

"35“有点随意,但在这种情况下,32到39之间的任何值都可以。它与字段的宽度(2个字符,小于制表位的宽度)、每行所需的字段数和制表位的宽度(8个字符)有关。所以,基本上,8*4等于32。

下面是-s选项(与-t一起使用)的演示:

代码语言:javascript
复制
$ echo -e "a;b|c\naaaaa;bbbbb|ccccc"|column -t -s ';|'
a      b      c
aaaaa  bbbbb  ccccc

如果不使用column,输出将如下所示:

代码语言:javascript
复制
$ echo -e "a;b|c\naaaaa;bbbbb|ccccc"
a;b|c
aaaaa;bbbbb|ccccc
票数 2
EN

Stack Overflow用户

发布于 2010-11-27 23:24:10

让我们猜猜你想要:

代码语言:javascript
复制
01 02 03 04
05 06 07 08
09 10 11 12
13 14 15 16

在这种情况下:

代码语言:javascript
复制
$ xargs -n4 < file
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4290731

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档