Column列命令作用是什么?Column列命令如何使用?

博主:xiaoweixiaowei 2022-12-20 条评论

Column列命令作用是什么?Column列命令如何使用?Column 命令对于大多数人可能并不是那么熟悉,但它是一个非常有用的命令,特别是在终端中以列的形式美观的格式化展示输出内容。

Column作为一个实用命令行工具,它可以根据源文件的结构将您的输出格式化为列格式(行和字段)。该命令在Debian系列版本和RHEL系列发现版本中略有不同,这个需要大家注意。本文的演示中以 CentOS7 和 Ubuntu 进行演示,他们之间Column命令选项有所不同。

一、查看Column命令版本

可以通过以下命令查看Column版本,该命令不适合Debian/Ubuntu系列版本:

column --version 

当然,你也可以通过以下命令来util-linux版本,可以达到同样的效果。

$ rpm -qa | grep -i util-linux # Redhat,Centos,Fedora,Amazon Linux
$ dpkg -l | grep -i util-linux # Ubuntu

使用Column命令之前,建议你通过man Column来查看Column命令更详细的使用,这也通常是我们详细了解linux系统中命令的一个常用方式。

二、以表格格式列出文件内容

列命令Column可以通过使用参数-t默认以空格作为分隔符以表格格式列出文件内容,下面我们以/etc/passwd为例来展示。

column -t /etc/passwd

结果类似如下:

Column列命令作用

上面的输出内容,虽然已进行了展示,并且以默认空格为默认的分隔符进行列表展示,但可能并不是你希望看到的结果。

三、指定具体分隔符

Column命令支持自定义分隔符,通过参数-s后面跟行分隔符就可以。下面我们使用”:”作为默认的分隔符来对/etc/passwd进行展示,看下效果如何。

column -s ":"  -t /etc/passwd

输出内容如下:

Column列命令作用

这样看起来,是不是更直观一点呢,但还是又一些没有对齐的地方,因为对于”::”这种方式,命令只会当成一个分隔符隔开。

为了更完美的格式化展示,我们可以通过增加-n参数来避免以上的效果出现,命令如下:

column -s ":" -t -n /etc/passwd

展示效果如下:

Column列命令作用

需要注意,-n 参数仅在 Debian/Ubuntu 上有效。

忽略文件输出中的白色空行
如果查看的是文本文件,而且文件中有空行,如果使用cat命令查看,会发现空行也会显示,看起来不够美观,如果使用Column命令,则当输入文件中有空白行时,默认情况下列命令会忽略它。

例如下面的命令,查看demo.txt文件,并且以“,”进行制表格式化展示。

column -t -s "," demo.txt

以上命令在CentOS上执行。

The End

发布于:2022-12-20,除非注明,否则均为 主机评测原创文章,转载请注明出处。