当您在 Linux 的命令行上工作时,有时希望快速查看文件的第一行,例如,有个日志文件不断更新,希望每次都查看日志文件的前 10 行。很多朋友使用文本编辑的命令是vim,但还有个命令head也可以让轻松查看文件的第一行。
在本文中,我们将通过一些易于理解的示例来解释 head 命令的基础知识,请注意,此处提到的所有步骤/说明都已在 Ubuntu 22.04 上进行了测试。
Linux head 命令
如开头所述,head命令让用户查看文件的第一部分。
语法:
head [OPTION]... [FILE]...
以下是该命令的手册页对其的描述:
Print the first 10 lines of each FILE to standard output. With more than one FILE, precede each
with a header giving the file name.
以下问答式示例应该可以让您更好地了解该工具的工作原理:
1、如何在终端(标准输出)上打印文件的前 10 行?
使用head非常容易:
head [file-name]
输出:
2、如何调整头部打印的行数?
虽然 10 是 head 命令打印的默认行数,但您可以根据需要更改此数字,使用-n参数即可:
head -n [N] [File-name]
例如,如果您只想打印前 5 行,您可以通过以下方式将其传达给工具:
head -n 5 file1.txt
3、如何将输出限制为一定数量的字节?
不仅是行数,您还可以将head命令输出限制为特定字节数,这可以使用-c命令行选项 来完成。
head -c [N] [File-name]
例如,如果您希望 head 仅显示前 25 个字节,则执行方法如下:
head -c 25 file1.txt
因此您可以看到该命令仅显示输出中的前 25 个字节。
请注意,[N]”可能有乘数后缀:b 512、kB 1000、K 1024、MB 1000*1000、M 1024*1024、GB 1000*1000*1000、G 1024*1024*1024 、T、P、E、Z、Y。”
4、如何在输出中打印文件名?
如果出于某种原因,您还希望head命令在输出中打印文件名,您可以使用-v命令行选项来做到这一点。
head -v [file-name]
这是一个例子:
如您所见,输出中显示了文件名“file 1”。
5、如何将 NUL 作为行分隔符而不是换行符?
默认情况下,head命令输出以换行符分隔。但是也可以选择使用 NUL 作为分隔符。选项-z或--zero-terminated可让您执行此操作。
head -z [file-name]
结论
大多数人都会同意,head 是一个易于理解和使用的简单命令,这意味着与它相关的学习曲线很小。它提供的功能(就命令行选项而言)也很有限,我们几乎涵盖了所有功能。因此,请尝试这些选项,完成后,请查看命令的 手册页以了解更多信息。