【概述】
在查看文件内容时,有以下几个命令,可以根据不同的需要选取相应的命令:
cat
命令:从第一行开始显示tac
命令:从最后一行开始显示nl
命令:显示文件内容时同时显示行号more
命令:一页一页显示文件内容less
命令:一页一页显示内容,可以向前翻页head
命令:只看开头几行tail
命令:只看结尾几行od
命令:以二进制方式读取文件内容
【直接查看文件内容】
cat 命令
命令格式
cat
命令会将文件从第一行到最后一行显示,其命令格式为:cat [选项] 文件
其选项有:
- -n:列出行号,含空白行
- -b:列出行号,不含空白行
- -T:将
Tab
以^I
显示出来 - -E:将结尾的断行字符
$
显示出来 - -v:列出看不到的特殊字符
- -A:相当于
vET
实例
正向显示 /test/test.txt 中的内容,要求同时输出行号
tac 命令
命令格式
tac
命令则是从最后一行到第一行显示,与 cat
命令正好相反,其命令格式为:tac [选项] 文件
选项有:
- -b:在行前而非行尾添加分隔标志
- -r:将分隔标志视作正则表达式来解析
- -s:使用指定字符串代替换行作为分隔标志
实例
反向显示 /test/test.txt 中的内容
nl 命令
命令格式
nl
命令会添加行号打印文件内容,其命令格式为:nl [选项] 文件
选项有:
- 指定行号指定方式:
- -b a:无论是否有空行,均列出行号(类似 cat -n)
- -b t:如果有空行,空行不列出行号(默认)
- 列出行号表示方法:
-n ln:行号在屏幕最左方显示,且不加 0
-n rn:行号在字段最右方显示,且不加 0
-n rz:行号在字段最右方显示,且加 0(默认为 6 位) - -w:行号字段占用位数
实例
1.输出 /test/test.txt 的内容,同时显示行号,要求行号在字段左边
2.输出 /test/test.txt 的内容,同时显示行号,要求行号在字段右边
3.输出 /test/test.txt 的内容,同时显示行号,要求行号在字段右边,自动补0,若有空行同样显示行号,且行号位数为 3
【翻页查看】
more 命令
more
命令可以一页一页的对文件进行查看,当文件内容大于屏幕输出的行数时,最后一行会显示当前显示的百分比
在查看过程中,可输入一些命令,来进行操作:
- 空格键:下翻一页
- 回车键:下滚一行
- /字符串:在当前页向下查询 “字符串”
- :f:立即显示文件名及目前行数
- b:向回翻页
- q:退出 more
less 命令
less
命令同样是用来一页一页查看文件的,但比 more
命令更有弹性
同样,在阅读过程中,可输入一些命令,来进行操作:
- 空格键:下翻一页
- PageDown:下翻一页
- PageUp:上翻一页
- /字符串:在当前页向下查询 “字符串”
- ?字符串:在当前页向上查询 “字符串”
- n:重复前一个查询
- N:反向重复前一个查询
- q:退出 less
【数据选取】
对于输出的数据,可以利用 head
命令和 tail
命令做一个简单的选取,两者以行为单位,从前向后或从后向前选取若干行
其命令格式如下:
head [-n number] 文件
:从前向后选取 number 行(默认 10 行)tail [-n number] 文件
:从后向前选取 number 行(默认 10 行)
【非纯文本文件】
对于非纯文本文件,当利用 cat
等命令读取其内容时,会产生类似乱码的数据,od
命令可以读取二进制执行文件
其命令格式为:od [选项] 文件
选项有:
- -t a[size]:利用默认字符输出
- -t c[size]:利用 ASCII 码输出
- -t d[size]:利用十进制输出,每个整数占据 size 字节
- -t f[size]:利用浮点数进制输出,每个整数占据 size 字节
- -t o[size]:利用八进制输出,每个整数占据 size 字节
- -t x[size]:利用十六进制输出,每个整数占据 size 字节
这个命令对用户来说,帮助并不大,但对于程序员,这个命令可以将二进制文件的内容做一个大致的输出,可以近似的看出其含义
如下图,是将 /etc/issue 这个文件的内容以八进制列出存储值与 ASCII 的对照表