head和tail命令
- head 输出文件的头部
- tail 输出文件的尾部
两个命令都是打印显示文件内容
head
-
默认打印前10行内容
-
如果有多个文件,在每个文件输出之前添加文件名
-c +NUM 按字符大小进行输出显示
-n +NUM 按行数进行输出显示 -
tail head的选项后还附加
-f == --follow=descriptor
-F == --follow=name
区别 descriptor/name
-f / -F 当文件有内容增加,在终端动态追加新的内容。常用于查看日志文件
- -f 是按照文件描述符跟踪,当文件删除,跟踪会停止 —> 通过文件描述符打开文件
- -F 是按照文件名跟踪,当文件被删除或改名后,如果再次创建相同的文件名,会继续跟踪 --> 一直跟踪文件名
此时要想暂停刷新,使用【Ctrl】+【S】暂停终端。
若想继续终端,使用【Ctrl】+【Q】。
若想退出tail命令,直接使用【Ctrl】+【C】。
小技巧
-
查看文件file第 # 行的内容
head -n # file | tail -n 1 -
动态查看file.log 的内容
tail -f file.log -
head/tail命令 不加文件,则直接从标准输入读取
head -n 2 --> 从标准输入读取两行内容输出到标准输出
head -n 2 >> file 将标准输出中两行内容追加到file文件中
跟tail功能相似的命令还有:
- cat 从第一行開始显示档案内容。
- tac 从最后一行開始显示档案内容。
- more 分页显示档案内容。
- less 与 more 相似,但支持向前翻页
- head 仅仅显示前面几行
- tail 仅仅显示后面几行
- n 带行号显示档案内容
- od 以二进制方式显示档案内容