linux 文件内容查看
cat 由第一行开始显示文件内容
tac 从最后一行开始显示,可以看出 tac 是 cat 的倒着写!
nl 显示的时候,顺道输出行号!
more 一页一页的显示文件内容
less 与 more 类似,但是比 more 更好的是,他可以往前翻页!
head 只看头几行
tail 只看尾巴几行
od 以二进制的方式读取文件内容
cat(Concatenate),主要功能是将一个文件的内容连续显示在屏幕上面。
cat [-AbEnTv]
选项与参数:
-A :相当于 -vET 的整合选项,可列出一些特殊字符而不是空白而已;
-b :列出行号,仅针对非空白行做行号显示,空白行不标行号!
-E :将结尾的断行字符 $ 显示出来;
-n :打印出行号,连同空白行也会有行号,与 -b 的选项不同;
-T :将 [tab] 按键以 ^I 显示出来;
-v :列出一些看不出来的特殊字符 tac(反向列示),由最后一行到第一行反向在屏幕上显示出来 nl,添加行号打印 nl [-bnw] 文件 选项与参数:
-b :指定行号指定的方式,主要有两种:
-b a :表示不论是否为空行,也同样列出行号(类似 cat -n);
-b t :如果有空行,空的那一行不要列出行号(默认值);
-n :列出行号表示的方法,主要有三种:
-n ln :行号在屏幕的最左方显示;
-n rn :行号在自己字段的最右方显示,且不加 0 ;
-n rz :行号在自己字段的最右方显示,且加 0 ;
-w :行号字段的占用的字符数。
more 一页一页翻动查看
在more这个程序运行的过程中,还有一些按键:
空格键(Space) :代表向下翻一页
Enter :代表向下滚动一行
/字符串 :代表在这个显示的内容当中,向下查询“字符串”这个关键字
:f :立刻显示出文件名以及目前显示的行数
q :代表立刻离开more,不在显示该文件内容
b或[ ctrl ]-b :代表往回翻,不过这操作只对文件有用对管道无用
less (一页一页翻动)
less 的用法比起 more 又更加的有弹性。 在 more 的时候,我们并没有办法向前面翻,只能往后面看,但若使用了 less 时,就可以使用 [pageup] [pagedown] 等按键的功能来往前往后翻看文件
在 less 里头可以输入的指令有:
空格键 :向下翻动一页;
[pagedown]:向下翻动一页;
[pageup] :向上翻动一页;
/字符串 :向下搜寻『字符串』的功能;
?字符串 :向上搜寻『字符串』的功能;
n :重复前一个搜寻 (与 / 或 ? 有关!)
N :反向的重复前一个搜寻 (与 / 或 ? 有关!)
g :前进到这个资料的第一行去;
G :前进到这个数据的最后一行去 (注意大小写);
q :离开 less 这个程序 head (取出前面几行)
head [-n number] 文件
选项与参数:
-n :后面接数字,代表显示几行的意思
默认的情况中,显示前面十行
如果后面 100 行的数据都不打印,只打印/etc/man_db.conf 的前面几行,该如何是好?
[root@study ~]# head -n -100 /etc/man_db.con
tail (取出后面几行)
tail [-n number] 文件
选项与参数:
-n :后面接数字,代表显示几行的意思 默认的情况中,显示最后十行
-f :表示持续侦测后面所接的档名,要等到按下[ctrl]-c 才会结束 tail 的侦测
如果不知道/etc/man_db.conf 有几行,却只想列出 100 行以后的数据时?
[root@study ~]# tail -n +100 /etc/man_db.conf
范例二:持续侦测/var/log/messages 的内容
[root@study ~]# tail -f /var/log/messages <==要等到输入[crtl]-c 之后才会离开 tail 这个指令的侦测
假如我想要显示 /etc/man_db.conf 的第 11 到第 20 行呢?
答:
这个应该不算难,想一想,在第 11 到第 20 行,那么我取前 20 行,再取后十行,所以结果就是:『 head -n 20/etc/man_db.conf | tail -n 10 』,这样就可以得到第 11 到第 20 行之间的内容了
这两个指令中间有个管线 (|) 的符号存在,这个管线的意思是:『前面的指令所输出的讯息,请透过管线交由后续 的指令继续使用』的意思。 所以, head -n 20 /etc/man_db.conf 会将文件内的 20 行取出来,但不输出到屏幕上, 而是转交给后续的 tail 指令继续处理。
非纯文本档:
od 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 ;
修改文件时间或建置新档:
touch
modification time (mtime): 当该文件的『内容数据』变更时,就会更新这个时间。内容数据指的是文件的内容,而不是文件的属性或权限。
status time (ctime): 当该文件的『状态 (status)』改变时,就会更新这个时间,举例来说,像是权限与属性被更改了,都会更新这个时间。
access time (atime): 当『该文件的内容被取用』时,就会更新这个读取时间 (access)。
举例来说,我们使用 cat 去读取/etc/man_db.conf , 就会更新该文件的 atime 了。
touch [-acdmt] 文件
选项与参数:
-a :仅修订 access time;
-c :仅修改文件的时间,若该文件不存在则不建立新文件;
-d :后面可以接欲修订的日期而不用目前的日期,也可以使用 --date="日期或时间";
-m :仅修改 mtime ;
-t :后面可以接欲修订的时间而不用目前的时间,格式为[YYYYMMDDhhmm]
touch 这个指令最常被使用的情况是:
建立一个空的文件;
将某个文件日期修订为目前 (mtime 与 atime)

浙公网安备 33010602011771号