以列格式显示命令输出或文件内容

这篇简短的文章将演示如何在Linux终端内以清晰的“列”格式显示命令输出或文件内容。

你厌倦了查看拥塞的命令输出或终端上的文件内容。 这篇简短的文章将演示如何以清晰的“ ”格式显示命令输出或文件内容。

我们可以使用实用程序将标准输入或文件内容转换为多列的表格形式,以获得清晰的输出。

另请参阅用于在Linux中过滤文本以进行有效文件操作的12条有用命令

为了更清楚地理解,我们创建了一个如下文件“ howtoing-authors.txt ”,其中包含了前10位作者的名字,文章的数量以及他们收到的评论数量。

为了演示这个,运行下面的cat命令来查看howtoing-authors.txt文件。

$ cat howtoing-authors.txt
示例输出
pos|author|articles|comments
1|ravisaive|431|9785
2|aaronkili|369|7894
3|avishek|194|2349
4|cezarmatei|172|3256
5|gacanepa|165|2378
6|marintodorov|44|144
7|babin lonston|40|457
8|hannyhelal|30|367
9|gunjit kher|20|156
10|jesseafolabi|12|89

使用列命令 ,我们可以显示一个非常清晰的输出,如下所示,其中-t帮助确定输入包含的列数,并创建一个表, -s指定一个分隔符。

$ cat howtoing-authors.txt  | column -t -s "|"
示例输出
pos  author         articles  comments
1    ravisaive      431       9785
2    aaronkili      369       7894
3    avishek        194       2349
4    cezarmatei     172       3256
5    gacanepa       165       2378
6    marintodorov   44        144
7    babin lonston  40        457
8    hannyhelal     30        367
9    gunjit kher    20        156
10   jesseafolabi   12        89

默认情况下,在列之前填充行,在填充行使用-x开关之前填充列,并指示列命令考虑空行(默认情况下将被忽略),包括-e标志。

下面是另外一个实际的例子,运行下面的两个命令,看看区别,进一步了解魔柱可以做的事情

$ mount
$ mount | column -t
示例输出
sysfs        on  /sys                             type  sysfs            (rw,nosuid,nodev,noexec,relatime)
proc         on  /proc                            type  proc             (rw,nosuid,nodev,noexec,relatime)
udev         on  /dev                             type  devtmpfs         (rw,nosuid,relatime,size=4013172k,nr_inodes=1003293,mode=755)
devpts       on  /dev/pts                         type  devpts           (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000)
tmpfs        on  /run                             type  tmpfs            (rw,nosuid,noexec,relatime,size=806904k,mode=755)
/dev/sda10   on  /                                type  ext4             (rw,relatime,errors=remount-ro,data=ordered)
securityfs   on  /sys/kernel/security             type  securityfs       (rw,nosuid,nodev,noexec,relatime)
tmpfs        on  /dev/shm                         type  tmpfs            (rw,nosuid,nodev)
tmpfs        on  /run/lock                        type  tmpfs            (rw,nosuid,nodev,noexec,relatime,size=5120k)
tmpfs        on  /sys/fs/cgroup                   type  tmpfs            (rw,mode=755)
cgroup       on  /sys/fs/cgroup/systemd           type  cgroup           (rw,nosuid,nodev,noexec,relatime,xattr,release_agent=/
....

要将格式良好的输出保存到文件中,请使用输出重定向(如图所示)。

$ mount | column -t >mount.out

有关更多信息,请参阅列手册页:

$ man column 

您也可以阅读以下相关文章。

  1. 如何使用Awk和正则表达式筛选文件中的文本或字符串
  2. 如何在Linux中根据修改日期和时间查找和排序文件
  3. 对字符类和括号表达式的高级Linux'Grep'命令

如果您有任何问题,请使用下面的评论表单写信给我们。 您可以在Linux中分享任何有用的命令行提示和技巧。