在linux下面,有许多命令都可以查看文件的内容,各种命令都有着有不同的用法与特点,可以根据自己的需要选择相应的命令以快速高效的查看文件内容,下面就将linux下查看文件内容的命令做一下总结。
cat 由第一行开始显示内容,并将所有内容输出
tac 从最后一行倒序显示内容,并将所有内容输出
more 根据窗口大小,一页一页的现实文件内容
less 和more类似,但其优点可以往前翻页,而且进行可以搜索字符
head 只显示头几行
tail 只显示最后几行
nl 类似于cat -n,显示时输出行号
下面将各种命令的用法详细比较一下,如下:
1.cat 命令
cat语法:cat [-n] 文件名
参数说明:-n : 显示时,连行号一起输出
cat的功能是将文件从第一行开始连续的将内容输出在屏幕上。但是cat并不常用,原因是当文件大,行数比较多时,屏幕无法全部容下时,只能看到一部分内容。
tac的功能是将文件从最后一行开始倒过来将内容数据输出到屏幕上。我们可以发现,tac实际上是cat反过来写。
2.tac 命令
tac语法:tac 文件名
这个命令输出的文件内容和cat输出的内容是完全倒过来的。一般没有变态需求很少用到。
3.more命令
more的语法:
more 文件名
more的功能是将文件从第一行开始,根据输出窗口的大小,适当的输出文件内容。当一页无法全部输出时,可以用"回车键"向下翻3行(我的环境是3行,其他linux版本可能不同),或者使用"空格键"向下翻页。退出查看页面,请按"q"键。这是一个比较常用的命令。
另外,more还可以配合管道符"|"(pipe)使用,例如:ls -al | more
4.less 命令
less的语法:
less 文件名
less的功能和more大同小异,但是使用more无法向前翻页,只能向后翻。less可以使用【pageup】和【pagedown】键进行前翻页和后翻页,这样看起来更方便。
另外,less还有一个功能,可以在文件中进行搜索你想找的内容,假设你想在passwd文件中查找有没有php.hhsy.cc字符串,那么你可以这样来做:
[sylar@UB2 etc]# less passwd
然后输入:
/php.hhsy.cc
回车
此时如果有php.hhsy.cc字符串,linux会把该字符已高亮方式显示。
退出查看页面,请按"q"键。
5.head 命令
head的语法:
head 【-n number】 文件名
head通常在只需要读取文件的前几行或者后几行的情况下使用。
例如:
[sylar@UB2 etc]# head -n 5 error.log -- 只显示error.log文件的前5行内容
6.tail 命令
tail的语法:
tail [-n number] 文件名
tail的功能恰好和head相反,只显示最后几行内容,用法一样,这里就不举例了。
7.nl 命令
nl的语法:
nl 文件名
nl命令的功能和cat -n 是一样的,同样是从第一行输出全部内容,并且把行号显示出来。