例题:
承上一题,那如果我想要列出正确的行号呢?就是屏幕上½列出
/etc/man_db.conf
的第
11
到第
20
行,且有行
号存在?
答:
我们可以透过
cat
-
n
来带出行号,然后再透过
head/tail
来撷取数据即可!所以就变成如下的模样了:
cat
-
n /etc/man_db.conf | head
-
n 20 | tail
-
n 10
6.3.4
非纯文本档:
od
我们上面提到的,都是在查阅纯文本档的内容。那么万一我们想要查阅非文本文件,举例来说,例如
/usr/bin/passwd
这个执行档的内容时,
又该如何去读出信息呢?事实上,由于执行档通常是
binary
file
,使用上头提到的指令来读取他的内容时,
确实会产生类似乱码的数据啊!那怎么办?没关系,
我们可以利用
od
这个指令来读取喔!
[root@study ~]#
od [
-
t TYPE]
文件
选项
或
参数
:
-
t
:后面可以½各种『
类
型
(TYPE)
』的
输
出,例如:
a
:利用默
认
的字符
来输
出;
c
:使用
ASCII
字符
来输
出
d[size]
:利用十
½
制
(decimal)
来输
出
数
据,每
个
整
数
占用
size bytes
;
f[size]
:利用浮
点数
(floating)
来输
出
数
据,每
个数
占用
size bytes
;
o[size]
:利用八
½
制
(octal)
来输
出
数
据,每
个
整
数
占用
size bytes
;
x[size]
:利用十六
½
制
(hexadecimal)
来输
出
数
据,每
个
整
数
占用
size bytes
;
范例一:
请½
/usr/bin/passwd
的
内
容使用
ASCII
方式
来
展
现
!
[root@study ~]#
od
-
t c /usr/bin/passwd
0000000
177 E L F 002 001 001
\
0
\
0
\
0
\
0
\
0
\
0
\
0
\
0
\
0
0000020 003
\
0 >
\
0 001
\
0
\
0
\
0 364 3
\
0
\
0
\
0
\
0
\
0
\
0
0000040 @
\
0
\
0
\
0
\
0
\
0
\
0
\
0 x e
\
0
\
0
\
0
\
0
\
0
\
0
0000060
\
0
\
0
\
0
\
0 @
\
0 8
\
0
\
t
\
0
@
\
0 035
\
0 034
\
0
0000100 006
\
0
\
0
\
0 005
\
0
\
0
\
0 @
\
0
\
0
\
0
\
0
\
0
\
0
\
0
.....(
后面省略
)....
#
最左
边
第一
栏
是以
8
½
位
来
表示
bytes
数
。以上面范例
来说
,第二
栏
0000020
代表
开头
是
#
第
16
个
byes (2x8)
的
内
容之意。
范例二:
请½
/etc/issue
这个
文件
的
内
容以
8
½
位列出
储
存值与
ASCII
的
对
照表
[root@study ~]#
od
-
t
oCc /etc/issue
0000000 134 123 012 113 145 162 156 145 154 040 134 162 040 157 156 040
\
S
\
n K e r n e l
\
r o n
0000020 141 156 040 134 155 012 012
a n
\
m
\
n
\
n
0000027