'cat' 命令的参数

'cat' 命令的参数
cat -b test1.txt

此命令用于跳过空白行并对其余行进行编号。

cat -n test1.txt

无论如何,此命令都会对行进行编号。

我尝试了这两种方法。一种是针对只有空格和制表符的文件,另一种是针对一些字母的文件。这两种方法都对两个文件进行了相同的编号。用空格和制表符填充文件是否是一种创建空行的方法,还是我做错了?

更新

我不知道这其中有什么不清楚的地方。所以我是这样得出的http://askubuntu.com

我正在读 我正在读这本书Richard Blum 撰写的《Linux 命令行和 Shell 脚本圣经》。其中提到了这一点:

在此处输入图片描述

所以我尝试这样做。我认为空行应该只包含制表符或空格。所以我创建了一个包含制表符和空格的文件(以便有一个空行)。所以我尝试运行以下命令:

cat -b test1.txt

但是,它仍然对仅包含制表符和空格的行进行编号。所以我知道制表符和空格仍然被视为字符。我在这里问了一个问题,如何在文本文件中为代码添加空白行:

cat -b text1.txt

上班。

这是我能做的最好的解释我的问题了。

答案1

您可以通过运行向名为“file_name”的文件添加一个空行

echo >> file_name

空行是指实际上不包含任何内容(包括制表符或空格)的行。

答案2

可以通过以下方式在文本文件中添加空行:

  • 在编辑器中打开文本文件
  • 按下Enter
  • 保存文件

答案3

要在输出中插入空白行,只需先输出文件的第一部分,然后运行echo,然后输出第二部分。

例如对于文件test

> cat test
line 1
line 2
line 3
line 4
> head -2 test && echo && tail -n+3 test
line 1
line 2

line 3
line 4

您可以定义一个函数来自动执行此操作,例如:

> blank_line(){ head -$(bc <<< $1-1) $2 && echo && tail -n+$1 $2;}
> blank_line 2 test
line 1

line 2
line 3
line 4

如您所见,这个简单的函数将应显示空白行的行号作为第一个参数,将文件名作为第二个参数。

相关内容