如何在 Linux 終端中以列格式顯示文件內容

有時您可能希望在 Linux 的命令行上工作時以列格式顯示文件的內容。 幸運的是,有一個 Linux 命令 Column 允許您以列格式顯示文件的內容。 這是非常簡單易用的命令行實用程序。

此命令行實用程序將輸入文件轉換為多列,您可以根據任何分隔符將內容轉換為列。 列命令在列之前填充行。

今天我們將看看 Column 命令的基礎知識,以及我們如何以最有用的方式使用它來格式化內容。 在本文中,我使用 Ubuntu 18.04 LTS 來描述該過程。

列命令的語法

column 命令的一般語法是:

$ 柱子 [parameters] [filename]

在裡面 [parameters],您可以指定以下選項:

-s 指定分隔符。

-C 輸出格式基於一行中允許的總字符數。

-t 創建表,默認使用空格或-s選項指定的字符作為分隔符

-X 默認情況下,行在列之前填充,但使用此參數您可以在填充行之前填充列

-n 默認情況下,多個分隔符合併為一個分隔符。 您可以使用 –n 參數禁用此行為。

-e 默認情況下,空行被忽略。 您可以使用 -e 參數禁用此行為。

列命令用法

例如,我創建了一個名為“test”的測試文件,其內容如下圖所示。 請注意,您可以在終端中使用 cat 命令查看文件內容而無需打開它。

按啟動終端 Ctrl+Alt+T 並輸入:

$貓 [filename]

我的測試文件如下所示:

要查看列命令實際執行的操作,請鍵入 柱子 後跟文件名:

$列 [filename]

通過輸入上面的命令,你會看到這個命令已經將文件的內容轉換成了列。

這是對 Column 命令的最簡單解釋。 現在我們將看到這個命令的更多用法。

使用自定義分隔符或分隔符

您可以在 Column 命令中使用自定義分隔符,它會告訴它何時應該將內容拆分為新列。

我正在使用包含如下圖所示內容的測試文件。 它包含以逗號分隔的數據。

利用 – 參數以表格格式顯示內容。 默認情況下,它使用空格作為分隔符。

要根據特定的分隔符分隔內容,請使用 – 參數後跟特定的分隔符或定界符,如下面的命令語法所示:

$列-t [-s separator] [filename]

使用 -n 參數添加多個分隔符

默認情況下, column 命令將多個相鄰的分隔符合併為一個分隔符。 例如,我們有一個示例文件,其中包含具有多個相鄰分隔符的內容,如下圖所示。

Column 命令會將多個分隔符視為一個分隔符,並將顯示如下輸出

添加 –n 選項將禁用此行為。 按照以下語法運行命令:

$列 [-n] [-t] [-s separator] [filename]

您會注意到前兩列之間的空間,這意味著它沒有將相鄰的分隔符合併為一個。

使用 -e 參數添加空行

默認情況下, column 命令會忽略空行。 如果要在列中包含這些空行,請使用 –電子 範圍。

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

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

要允許 column 命令在輸出中包含該空行,請使用以下語法中的命令:

$列 [-e] [-t] [-s separator] [filename]

您會注意到空行現在包含在 column 命令的輸出中。

使用 -x 參數在行之前填充列

Column 命令通過首先填充行然後填充可能不適合某些文件的列來將內容轉換為列。 但是,您可以更改此行為並且可以在填充行之前填充列。 為了清楚地理解,請參見下面 example.

在這 example,我有一個名為“xyz”的測試文件,其中包含一些內容。 我的測試文件如下所示:

使用 Column 命令將顯示如下輸出。 但是這不適用於上述類型的文件。

為此,我們將使用 –X 範圍。 鍵入列後跟 –X 和文件名。

$列 [-x] [filename]

現在你會注意到這個輸出是我們上面的示例文件的適當格式。

使用 -c 參數更改顯示寬度

您可以拉伸命令輸出的顯示寬度。 使用 – 指定行的寬度C column 命令中的參數。 在這 example,我有一個名為“xyz”的文件,其中包含如下所示的一些內容。

僅使用 column 命令顯示如下輸出:

要更改顯示的寬度,請鍵入命令後跟 –C 範圍。 為了減少顯示的寬度,我輸入了以下語法的命令:

$列 [-c characters] [filename]

為了增加顯示的寬度,我輸入瞭如下圖所示的命令:

現在您可以看到顯示器的寬度增加了。

Save 列輸出

要保存使用 Column 命令完成的格式化輸出,您可以在終端中使用以下命令。 命令的語法將是:

$ 柱子 [parameters] [filename1] > 文件名 2

這就是現在的全部。 您已經看到,通過本文中描述的列命令的基本但有用的示例,您可以完全掌握該命令並使用它來格式化您的內容,否則您必須手動完成。