fold命令入门示例教程

作者: Liang Chen 2018-03-05 09:25:06

你有没有发现自己在某种情况下想要折叠或中断命令的输出,以适应特定的宽度?在运行虚拟机的时候,我遇到了几次这种的情况,特别是没有 GUI 的服务器。以防万一,如果你想限制一个命令的输出为一个特定的宽度,现在看看这里!fold 命令在这里就能派的上用场了!fold 命令会以适合指定的宽度调整输入文件中的每一行,并将其打印到标准输出。


在这个简短的教程中,我们将看到 fold 命令的用法,带有实例。


 


fold 命令示例教程


fold 命令是 GNU coreutils 包的一部分,所以我们不用为安装的事情烦恼。


fold 命令的典型语法:


fold [OPTION]... [FILE]...


 


请允许我向您展示一些示例,以便您更好地了解 fold 命令。我有一个名为 linux.txt 文件,内容是随机的。




要将上述文件中的每一行换行为默认宽度,请运行:


fold linux.txt


每行 80 列是默认的宽度。这里是上述命令的输出:




正如你在上面的输出中看到的,fold 命令已经将输出限制为 80 个字符的宽度。


 


当然,我们可以指定您的首选宽度,例如 50,如下所示:


fold -w50 linux.txt


示例输出:




我们也可以将输出写入一个新的文件,如下所示:


fold -w50 linux.txt > linux1.txt


以上命令将把 linux.txt 的行宽度改为 50 个字符,并将输出写入到名为 linux1.txt 的新文件中。


让我们检查一下新文件的内容:


cat linux1.txt




你有没有注意到前面的命令的输出?有些词在行之间被中断。为了解决这个问题,我们可以使用 -s 标志来在空格处换行。


 


以下命令将给定文件中的每行调整为宽度 50,并在空格处换到新行:


fold -w50 -s linux.txt


示例输出:




看清楚了吗?现在,输出很清楚。换到新行中的单词都是用空格隔开的,所在行单词的长度大于 50 的时候就会被调整到下一行。


 


在所有上面的例子中,我们用列来限制输出宽度。但是,我们可以使用 -b 选项将输出的宽度强制为指定的字节数。 以下命令以 20 个字节中断输出。


fold -b20 linux.txt


示例输出:




 


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


man fold


 


这些就是所有的内容了。您现在知道如何使用 fold 命令以适应特定的宽度来限制命令的输出。我希望这是有用的。


 


Linux下使用uniq命令去掉文件中相邻的重复行:http://www.linuxdiyf.com/linux/28017.html


Linux uniq命令:http://www.linuxdiyf.com/linux/16108.html


Linux Shell工具grep awk cut sort uniq sort使用小结:http://www.linuxdiyf.com/linux/3805.html


Unix/Liunx uniq命令用法详解:http://www.linuxdiyf.com/linux/3126.html


AIX下uniq命令简介及使用:http://www.linuxdiyf.com/linux/1269.html

相关资讯