跳转到内容

Head (Unix)

维基百科,自由的百科全书

headUNIX操作系统类Unix系统上的一个计算机程序以及命令,用于显示文本類型的電腦檔案豎線数据的开头。[1]

語法

[编辑]

該命令语法如下:

head [options] file_name

默认情况下,輸入命令後会将文件的前10行傳輸到標準串流

选项

[编辑]
-n
-n count
--lines=count 可通过命令行选项修改输出的行数。以下示例显示文件 filename 的前 20 行:
head -n 20 filename

以下命令显示所有以 foo 开头的文件的前 5 行:

head -n 5 foo*
大多数版本[來源請求]允许省略 n,直接指定数字,例如:-5GNU head 还允许为 -n 选项使用负数参数,其含义是输出每个输入文件中除最后指定行数之外的所有内容。
-c
-c bytes
--bytes=bytes 输出前指定数量的字节。

其他命令

[编辑]

许多早期版本的 Unix 和 Plan 9 并没有提供该命令,因此文档和书籍通常改用 sed

sed 5q filename

上述示例会输出文件中的每一行(默认行为),并在输出第五行后退出。

同样地,也可以使用 awk 输出文件的前五行:

awk 'NR < 6' filename

然而,sedawk 均未包含在基于 Version 6 Unix 的早期 BSD 版本中,而这些系统则提供了 head 命令。[2]

参考文献

[编辑]
  1. ^ IBM. IBM System i Version 7.2 Programming Qshell (PDF). [2020-09-05]. (原始内容存档 (PDF)于2020-09-18) (英语). 
  2. ^ Spinellis, Diomidis. dspinellis/unix-history-man: Version 1.0 web pages (v1.1-web). Zenodo. 2022. doi:10.5281/zenodo.7248228.