linux显示文件内容并保存到某文件中,如何在Linux终端中以列格式显示文件内容...

有时需要在Linux中的命令行上以列格式显示文件的内容。幸运的是,有一个Linux命令Column,可让您以列格式显示文件的内容。也就是,可以将文本从行转为列显示,或者说做行列转换。今天,我们将研究Column命令的基础知识,以及如何以最有用的方式使用它来格式化内容。对于本文,我使用Ubuntu 18.04 LTS来描述该过程。

Column(列)命令的语法

column命令的常规语法为:

$ colunm[参数]   [文件名]

在[参数]中,可以指定以下选项:

-s指定分隔符。

-c根据一行中允许的总字符来格式化输出。

-t创建表,默认情况下,定界符默认是空格,或使用–s选项指定的字符

-x默认情况下,行在列之前填充,但是使用此参数可以在填充行之前填充列

-n默认情况下,多个定界符合并为一个定界符。您可以使用–n参数禁用此行为。

-e默认情况下,空行将被忽略。您可以使用–e参数禁用此行为。

Column(列)命令用法

例如,我创建了一个测试文件名为“test”,其内容如下图所示。请注意,您可以用其他方式查看文件的内容,不一定要在终端中使用cat命令打开它。

通过按下启动终端Ctrl + Alt + T并输入:

$ cat [文件名]

我的测试文件如下所示:

2ec4f2f70f3fabd31a20097423eaa056.png

要查看column命令的实际作用,请键入column后跟文件名:

$ column [文件名]

通过输入以上命令,您将看到该命令已将文件的内容转换为列。

63b76c69a5be017c4986e25d30147e9d.png

这是对Column命令的最简单的解释。现在,我们将看到此命令的更多用法。

使用自定义定界符或分隔符

您可以在Column命令中使用自定义分隔符,该命令将告诉它何时应将内容拆分为新列。

我使用的测试文件包含下图所示的内容。它包含用逗号分隔的数据。

477c30c9f60ed623f4f997d61d0a5590.png

采用 -t参数以表格格式显示内容。默认情况下,它使用空格作为分隔符。

d293f97aca65370c7488fbac969a3268.png

要基于特定的分隔符分隔内容,请使用–s参数,后跟特定的分隔符或定界符,如以下命令语法所示:

$ column -t [-s分隔符] [文件名]

08d29a0960c37677d62cda8d1fdbbc4e.png

使用-n参数添加多个定界符

默认情况下,column命令用单个分隔符合并多个相邻的相同分隔符。例如,我们有一个示例文件,其中包含具有多个相邻分隔符的内容,如下图所示。

c12ca5db5accfbfcd7b1ed38dfdbbdf4.png

Column命令将多个分隔符视为一个分隔符,并将显示以下输出

fdbdcf09c94570c59e6bc7134419a66c.png

添加–n选项将禁用此行为。使用以下语法运行命令:

$ column  [-n] [-t] [-s 分隔符] [文件名]

5bbecca66189431f8e00fe40cc514f27.png

您会注意到前两列之间的空间,这意味着它没有将相邻的分隔符合并为一个分隔符。

使用-e参数添加空行

默认情况下,column命令将忽略空行。如果要在列中包含这些空行,请使用–e参数。

例如,我有以下示例文件,其中带有一些空行。

706bbc370553387fa880b8f711be178a.png

我已经使用了column命令,但是您可以看到column命令没有包含空行。

93bbf89d6599401616f5e0f7674d649e.png

要允许column命令在输出中包含该空行,请使用以下语法中的命令:

$column [-e] [-t] [-s 分隔符] [文件名]

966bc77ce1375cb8b9a7ce944797422d.png

您会注意到,空行现在包含在column命令的输出中。

使用-x参数在行之前填充列

Column命令通过先填充行,然后填充列。这可能不适用于某些文件的行列转换。但是,您可以更改此行为,并且可以在填充行之前填充列。为了清楚理解,请参见以下示例。

在此示例中,我有一个名为“a.txt”的测试文件,其中包含1-100的数字,每行一个数字。我们希望数字转为从左到右,从上到下,按行业排列。

但是使用Column命令将显示如下输出。但是,这不符合我们要求的排列意义。

31d399c13ec2e3972b7ba9bf6a21f856.png

为此,我们将使用–x参数。键入column,后跟–x和文件名。

$ column [-x] [文件名]

c5b6c532ca3a001cf78f74d895f761fa.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值