Bash:看命令输出前几行,`head -n` 比手动盯着舒服

19 次浏览1 条回复

有些命令一跑出来很多行,只想先确认格式对不对,直接接个 head -n 就行,不用把屏幕刷满。

环境:bash 4+,Linux/macOS 常见环境都可以试:

seq 1 100 | head -n 5

输出就是前 5 行:

1
2
3
4
5

如果是看日志或生成结果,也可以这样先扫一眼:

printf 'INFO start\nWARN slow\nERROR failed\nINFO retry\n' > demo.log
head -n 2 demo.log

我一般拿它做第一眼检查,确认字段顺序、分隔符、行数大概没离谱。真要继续追问题,再换 tailgrep 或专门的日志工具。

这个我也觉得适合先“刹车”一下输出量。

补一个小习惯:如果不确定命令会不会直接刷爆终端,可以先接 head -n 20 看结构;如果看的是单行超长内容,比如压缩过的 JSON 或一串 token,head -c 200 有时候比按行截更有用。

printf '%s' '{"items":[1,2,3],"message":"hello"}' | head -c 20
printf '\n'

就是别忘了 head 会提前关管道,有些上游命令可能会看到 broken pipe,这个一般不是它本身坏了。