Linux学习笔记:cat、tac、more、less、head、tail查看文件内容

时间:2024-07-02 13:38:08

  Linux下查看文件内容可以通过以下命令:

  • cat
  • tac
  • more
  • less
  • head
  • tail
  • nl
  • tailf

1.cat

  由第一行开始显示内容,并将所有内容输出。当文件过大时,使用cat查看不方便。

  语法:cat -n filename.txt (-n:显示时,连行号一起输出)

2.tac

  从最后一行倒序显示内容,并将所有内容输出。

  语法:tac filename.txt

3.more

  根据窗口大小,一页一页的显示文件内容,退出查看页面,可按“q”键。

  另外,more可以配合管道符“|”(pipe)使用,例如:ls -al | more

  语法:more filename.txt

4.less

  和more类似,但其优点可以使用【pageup】和【pagedown】键前后翻页。

  语法:less filename.txt

  less还有一个功能,可以在文件中进行搜索字符串。

less filename.txt
# 再输入
/keyword

  如果此时能查找到keyword字符串,linux会把该字符串以高亮的方式显示。

  退出查看页面,按“q”键。

5.head

  只显示文件的前几行。

  语法:head filename.txt 显示文件的前10行

  head -n 3 filename.txt 显示前3行

  head -3 filename.txt 显示前3行

6.tail

  只显示文件的后几行。

  语法:同head

7.nl

  nl的功能和cat -n一样,从第一行开始输出全部内容,并且显示行号。

  语法:nl filename.txt

8.tailf

  类似于tail -f filename 监视filename文件的尾部内容(默认10行,相当于增加参数 -n 10),刷新显示在屏幕上。

  退出,按下Ctrl+C

  tail -f 和 tailf 的区别:

  • tailf 总是从文件开头一点一点的读, 而tail -f 则是从文件尾部开始读;
  • tailf check文件增长时,使用的是文件名, 用stat系统调用;而tail -f 则使用的是已打开的文件描述符;
  • 注:tailf 也可以做到类似跟踪文件名的效果,但是tail总是使用fstat系统调用,而不是stat系统调用。结果就是:默认情况下,当tail的文件被偷偷删除时,tail是不知道的,而tailf是知道的。

  可用于动态跟踪日志文件logfile。


END 2018-08-22 11:01:12

多学!多记!多识!