一天一点学习Linux之文件内容的查看

来源:岁月联盟 编辑:exp 时间:2011-10-23

 

要想查看文件里面的内容,可以有很多命令可以使用,今天我就介绍几个大家常用的查看文件内容的命令。当然,这里面有个Linux系统上的王牌命令(工具)vim,这个工具的使用我们在vi/vim的使用中已经详细讲过了,这个不但可以查看,而且还可以对其进入编辑,而且还很方便。今天主要是来查看文件里面的内容,而不包括编辑。

 

 

查看文件内容常用的命令

cat 由第一行开始显示文件内容

tac 从最后一行开始显示,tac是cat倒着写

nl 显示出行号

more 一页一页显示文件内容

less 与more类似,但是比more更好的是,他可以向前翻页

head 只看头几行

tail 只看尾几行

od 以二进制的方式读取文件内容

 

cat(concatenate)

常用参数

-b 列出行号。仅针对非空白行做行号显示,空白行不显示行号

-n 列出行号。连同空白行一起显示行号,空白行也显示行号。与-b的选项不同

注:如果文件较长,文章内容会在屏幕上飞快地滚过,可能看不到你想要的内容,要防止这一情况的发生,可以通过使用管道(|)和less命令结合,这样就会一页一页地显示文件,而且还可以使用向上或向下的箭头键或翻页键向前或向后移动。

 

tac 是cat的倒着写的,效果也是从最后一行, 到第一行来显示。和cat一样的,只是显示的顺序不同而已。这里不做详细解释。

 

nl

此命令和上面cat加-b -n的参数差不多,但在实际使用中,用的并不多,有兴趣有可以玩一下

常用参数

-b 指定行号指定的方式,主要有两种:

-b a :表示不论是否为空行,也同样列出行号(类似cat -n)

-b t :如果有空行,空的那一行不要列出行号(默认值)

-n 列出行号表示的方法,主要有三种:

-n ln :行号在屏幕的最左方显示

-n rn :行号在自己字段的最右方显示,且不加0

-n rz :行号在自己字段的最右方显示,且加0

-w 行号字段的占用的位数

 

上面这三个命令,都是一次性把所有内容全部显示,不方便我们查看我们想要的内容,那么为了解决这个问题,就有了下面的两个命令more和less。

 

more 一页一页翻动

使用此命令后,在屏幕的最下文,还会有相应的提示,而且还会有几个常用的按键供我们使用。

空格键:代表向下翻一页

Enter :代表向下翻一行

/字符串 :代表在这个显示的内容中,向下查找”字符串”这个关键词

:f :立刻显示出文件名以及目前显示的行数

q :代表立刻离开more,不再显示该文件内容

b 或[ctrl]+b :代表向上翻页

 

 

 

less 一页一页翻动

less的用法比起more又更加的具有人性化,在使用more的时候,我们并没有办法向前面翻页,只能向后查看。如果说,使用less,那么就可以使用PageUp、PageDown等按键的功能来向前或向后翻看文件。这样就更方便了点。

空格键 :向下翻一页

PageDown:向下翻一页

PageUp :向上翻一页

/字符串 :向下查找”字符串”

?字符串 :向上查找”字符串”

n :重复前一个查找

N :反向重复前一个查找

q : 退出less

这是不是和vi/vim有点相似呢!哈哈……

 

上面讲的是查看全文,那么,我只想可看某个文件中的某个部分的话,有没有什么快速的方法呢?当然有,看下面的介绍。

 

head 显示出前面几行内容

-n:后面接数字,代表显示几行的意思。默认的是10行

如果后面的数字是一个负数,表示文件后面的这个行数不显示,其它的全显示。也就是说从头显示到后n行之间的全部内容。这个如果不好理解的话,大家动手实验一下就知道了。

head -n 10 file=head -n +10 file

显示的是前10行的内容

head -n -10 file

从头显示到倒数第十行为止

 

tail 显示出后几行内容

-n :后面接数字,代表显示后几行的意思。默认也是10行

-f :表示连续查看后面所增加的内容,要等到按下Ctrl+c才会结束tail的查看。这个功能一般在观察日志的时候经常用到

 

tail -n 10 file=tail -n -10 file

显示的是后10的内容

tail -n +10 file

显示的是从第10行开始显示到最后

这个和head是一样的来理解。如果想截取某个文件中的某一部分,我相信大家通过上面的两个学习,应该能实现了吧。

 

od 查看非纯文文件的内容

以上我们所说的,都是一些纯文本的文件,当然,系统中还有一些不是纯文本的文件,那么这些文件,如果用上面的命令来查看的话,全是乱码,什么也看不到。这时候我们就会用到od命令了。

选项

-t 后面可以接各种类型的输出

a :利用默认的字符输出

c :使用ASCII 字符输出

d[size] :利用十进制(decimal)输出数据

f[size] :利用浮点数(floating)输出数据

o[size] :利用八进制(octal)输出数据

x[size] :利用十六进制(hexadecimal)输出数据

大家可以通过/usr/bin/passwd文件来实验。建议在实验前,先做好备份,然后在备份的文件上进行操作。

虽然对于一般使用者来说,这个命令的用处可能不大,但是对于工程师来说, 这个指令可以将二进制的内容作一个大致的输出,他们可以看得出东西是什么。可惜我不是工程师哈。

 

file 查看文件类型命令

这里顺便说一下这个命令,下面是三个例子,看一下就明白了。这个file命令也有很多参数,可以自己研究。

file ~/.bashrc

file /var/lib/mlocate/mlocate.db

file /usr/bin/passwd

摘自 羽飞的博客