先打个广告:欢迎关注我的公众号,参与 文史大挑战 趣味题目。使用方法见 这篇文章 。
正文开始:
在 利用命令行工具(0) 处理日志 一文中,一系列介绍命令行处理文件的文章,本文用于预览文件一部分。
统计文件的行数
统计当前目录下某一类文件的行数:
wc -l *.log
212 ./error.log
137129 ./access.log
137341 total
查看文件的部分行
有时想分析的文件体积过于庞大,用命令行编辑器直接打开过于消耗资源,这时可以只预览其中的一小部分,因为很多时候,一小部分就足以满足我们分析文件的要求。
查看文件前 N 行
查看文件前 1000 行,比如下图中标 head 的黄色部分:
$ head -n KB access.log
这里的 KB
参数如果把 B
去掉,留下 K
,得到的是前 1024 行。
查看文件最后N行前面的部分
查看文件最后 100 行前面的部分,比如下图中标 head 的黄色部分:
$ head -n -100 access.log
这里的 -100
中的负号表示"往回、反方向"
查看从文件的第100行开始的后面部分
比如下图中标 tail 的绿色部分:
$ tail -n +100 access.log
查看文件的中间的内容
查看文件从第3行到第5行之间的内容,比如下图的中间部分:
下列两种方法皆可:
$ head -n 5 access.log | tail -n +3
$ sed -n '3,5p' access.log
- 显示文件内容,并同时显示行号(下列两种皆可)
$ cat -n file
$ awk '{ print NR " " $0 }' file
- 将两个文件合并显示,并同时显示行号(空行不参与统计行号)
$ cat -b file1 file2
- 显示文件最后3行,并且倒序显示,就是最先显示文件最后一行
$ tail -n 3 file | tac
查看文件的部分列
假设待分隔的文件如下:
f1,f2,f3,f4,f5
a,b,c,d,e
v,w,x,y,z
希望得到第2,3,4列
$ cut -d, -f2-4 file
$ awk -F "," '{ print $2 "," $3 "," $4 }' file
如果您对本文有疑问或者寻求合作,欢迎 联系邮箱 。邮箱已到剪贴板
系列: Linux 工具
给个免费的赞吧~
精彩评论
本站 是个人网站,采用 署名协议 CC-BY-NC 授权。
欢迎转载,请保留原文链接 https://www.lfhacks.com/tech/log-toolkit-part/ ,且不得用于商业用途。