初学者解释的Linux unexpand命令(带示例)

在Linux命令行上工作需要学习如何快速执行一些重复性任务。一个你可能会发现自己参与的这样的任务...

初学者解释的Linux unexpand命令(带示例)

在Linux命令行上工作需要学习如何快速执行一些重复性任务。 你可能迟早会涉及的一项任务是将空白转换为制表符,反之亦然。 在本教程中,我们将讨论一个命令行实用程序 - 称为unexpand - 在这种情况下会很有帮助

但在开始之前,值得一提的是本文中的所有示例都已在Ubuntu 16.04 LTS机器上进行了测试。

Linux未展开命令

unexpand命令可让您将空格转换为制表符。 以下是它的语法:

unexpand [OPTION]... [FILE]...

以下是手册页描述的方式:

Convert blanks in each FILE to tabs, writing to standard output. With no FILE, or when FILE is -, read standard input.

以下是一些问答式样的例子,应该给你一个关于未展开命令如何工作的好主意。

Q1。 如何使用unexpand命令?

假设你有一个文本包含标签的文件。 现在,无论出于何种原因,您可以使用expand命令将这些制表符转换为空格,现在您想要再次将空格转换为制表符,那么在这种情况下,可以使用unexpand命令。

例如:

unexpand file1

该工具在stdout上生成转换后的输出。 所以要保存它,你可以将它重定向到某个文件。 例如:

unexpand file1 > file2

值得一提的是,默认情况下,该工具仅适用于初始空白。 您可以使用-a选项告诉该实用程序您要将所有空格/空格转换为制表符。

Q2。 如何强制展开只转换初始/前导空白?

该工具提供了一个选项,强制它仅转换初始空格或空格(即使存在-a选项)。 有问题的选项是- 第一只

unexpand --first-only -a file1 > file2

Q3。 -t选项的作用是什么?

那么,-t选项有多个角色。 它接受一个单一的号码或逗号分隔的数字列表。 当你传递一个数字(比如'n')时,unexpand命令确保它将文件中的空格压缩到每个'n'位置的选项卡中。

例如,要使工具将空白压缩到每3个位置的选项卡中,请按以下方式使用此选项:

unexpand -t 3 file1 > file2

另一方面,如果给这个选项一个命令分隔的数字列表,工具将制表位放在这些特定位置。

unexpand -t 1,2,3 file1 > file2

Q4。 如何使STDIN的未展开阅读输入?

这很简单 - 只需运行没有任何文件名作为输入的命令(使用ctrl + D告诉实用程序你已完成)。

以下是我正在谈论的内容:

unexpand

结论

取决于你所做的工作类型,未展开的命令可能会有很大的帮助。 在本教程中,我们讨论了该工具提供的大部分命令行选项。 要了解更多信息,请转到其手册页