带有示例的展开和展开命令教程

在本指南中,我们将讨论两个鲜为人知的 Linux 命令,即 扩张展开 用实际例子。 对于那些想知道的人,Expand 命令用于将文件中的 TAB 字符替换为空格字符,而 Unexpand 命令则相反,即用文件中的 TAB 字符替换空格字符。 事实上,MS-DOS 也有一个命令叫“Expand”,用来扩展压缩文件。 但是 Linux Expand 命令只是将制表符转换为空格。 这两个命令是 GNU 核心工具 并由 大卫麦肯齐.

出于演示目的,我将在本指南中使用名为“ostechnix.txt”的文本文件。

展开命令示例

如前所述,Expand 命令将文件中的 TAB 字符替换为空格字符。

要将制表符转换为文件中的空格,例如“ostechnix.txt”,并使用以下命令将结果写入标准输出:

$ expand ostechnix.txt

如果您不想在标准输出中显示结果,只需将其上传到另一个文件,如下所示。

$ expand ostechnix.txt>output.txt

我们还可以将制表符转换为空格,从标准输入读取。 为此,只需运行“expand”命令而不提及源文件名:

$ expand

只需键入文本并按 ENTER 即可将制表符转换为空格。 按 CTRL+C 退出。

如果您不想在非空格后转换制表符,请使用 -一世 像下面这样的标志。

$ expand -i ostechnix.txt

我们还可以让制表符分隔一定数量的字符,而不是 8 个(默认值):

$ expand -t=5 ostechnix.txt

您甚至可以用逗号分隔多个选项卡位置,如下所示。

$ expand -t 5,10,15 ostechnix.txt

或者,

$ expand -t "5 10 15" ostechnix.txt

有关更多详细信息,请参阅手册页。

$ man expand

展开命令示例

展开 命令将执行与扩展命令相反的操作。 它将空格字符转换为制表符。 让我向您展示一些示例,以了解如何使用 Unexpand 命令。

要将文件中的空格(当然是空格)转换为制表符并将输出写入标准输出,请执行以下操作:

$ unexpand ostechnix.txt

如果要将输出写入文件而不是仅将其显示到标准输出,请使用以下命令:

$ unexpand ostechnix.txt>output.txt

将空白转换为制表符,从标准输出读取:

$ unexpand

默认情况下,Unexpand 命令只会转换初始空白。 如果要转换所有空白,而不仅仅是初始空白,请使用 -一个 旗帜:

$ unexpand -a ostechnix.txt

仅转换空格的前导序列(请注意,它会覆盖 -一个):

$ unexpand --first-only ostechnix.txt

制表符分开一定数量的字符,而不是 8 (启用 -一个):

$ unexpand -t 5 ostechnix.txt

同样,我们可以用逗号分隔多个选项卡位置,如下所示。

$ unexpand -t 5,10,15 ostechnix.txt

或者,

$ unexpand -t "5 10 15" ostechnix.txt

有关更多详细信息,请参阅手册页。

$ man unexpand

建议阅读:

  • 带有初学者示例的折叠命令教程

当您处理大量文件时,Expand 和 Unexpand 命令对于将不需要的 TAB 字符替换为 SPACE 字符非常有帮助,反之亦然。

感谢您的光临!

帮助我们帮助您:

  • 订阅我们的电子邮件通讯: 立即注册
  • 支持 OSTechNix: 通过贝宝捐款
  • 下载免费的电子书和视频: TradePub 上的 OSTechNix
  • 联系我们: 红迪网 | Facebook | 推特 | 领英 | RSS订阅

祝你有美好的一天!!

CLIExpandLinuxLinux 基础Linux 命令Linux howtoUnexpand