Head:输出文件的前一部分
跳到导航
跳到搜索
head命令默认打印每个文件的前部分(默认为10行),如果没有指定文件或者指定的文件为“-”,则从标准输入读取。概要如下:
head [option]… [file]…
退出状态为零表示成功,非零值表示失败。
如果指定了多个文件,head将在每个文件的输出前打印一行标题,格式如下:
==> file name <==
该程序接受以下选项。
'-c [-]num'
'--bytes=[-]num'
打印前num个字节,而不是前几行。但是,如果num前加上'-',则打印每个文件除最后num个字节外的所有内容。num可以是一个整数,也可以是一个整数后跟以下乘法后缀之一:
'b' => 512 ("blocks") 'KB' => 1000 (KiloBytes) 'K' => 1024 (KibiBytes) 'MB' => 1000*1000 (MegaBytes) 'M' => 1024*1024 (MebiBytes) 'GB' => 1000*1000*1000 (GigaBytes) 'G' => 1024*1024*1024 (GibiBytes)
以此类推,对于'T','P','E','Z','Y','R'和'Q'也是如此。也可以使用二进制前缀:'KiB'='K','MiB'='M'等。
'-n [-]num'
'--lines=[-]num'
输出前num行。但是,如果num前加上'-',则打印每个文件除最后num行外的所有内容。大小乘数后缀与-c选项相同。
'-q'
'--quiet'
'--silent'
不打印文件名头。
'-v'
'--verbose'
始终打印文件名头。
'-z'
'--zero-terminated'
使用零字节而不是换行符(ASCII LF)分隔项。即,将输入视为由ASCII NUL分隔的项,并以ASCII NUL终止输出项。此选项可以与'perl -0'或'find -print0'和'xargs -0'结合使用,以可靠地处理任意文件名(甚至包含空格或其他特殊字符的文件名)。
为了兼容性,head还支持一个已过时的选项语法- [num] [bkm] [cqv],只有在首次指定时才被识别。num是一个十进制数,可选择后跟大小写字母('b','k','m')表示以字节为单位,或者'l'表示以行数为单位,或者其他选项字母('cqv')。针对标准主机的脚本应该使用-c num或-n num。如果您的脚本还必须在只支持过时语法的主机上运行,通常可以简单地避免使用head,例如,使用'sed 5q'而不是'head -5'。