linux文件内容查看
- cat:由第一行开始显示文件内容
- tac:从最后一行开始显示,可以看出 tac 是 cat 的倒着写
- nl:显示的时候,同时输出行号
- more:一页一页地显示文件内容
- less:与 more 类似,但是比 more 更好的是,它可以往前翻页
- head:只看前面几行
- tail:只看后面几行
- od:以二进制的方式读取文件内容
cat
[archliu@archliu ~]# cat [-AbEnTv]
选项与参数
-A:相当于 -vET 的整合选项,可列出一些特殊字符而不是空白而已;
-b:列出行号,仅针对非空白行做行号显示,空白行不标行号;
-E:将结尾的换行符 $ 显示出来;
-n:打印出行号,连同空白行也会有行号,与 -b 的选项不同
-T:将 [tab] 按键以 ^I 显示出来
-v:列出一些看不出来的特殊字符
tac
cat 是由第一行到最后一行连续显示在屏幕上,而 tac 则是由最后一行到第一行反向在屏幕上显示出来
nl(添加行号打印)
[archliu@archliu ~]# nl [-bnw] 文件
选项与参数
-b:指定行号指定的方式,主要有两种:
-b a:表示不论是否为空行,也同样列出行号(类似 cat -n)
-b t:如果有空行,空的那行不要列出行号(默认值)
-n:列出行号表示的方法,主要有三种:
-n ln:行号在屏幕的最左方显示
-n rn:行号在自己栏位的最右方显示,且不加 0
-n rz:行号在自己栏位的最右方显示,且加 0
-w:行号栏位占用的字符数
[archliu@archliu ~]# nl -b a -n rz -w 3 /etc/issue
001 \S
002 Kernel \r on an \m
003
可翻页查看
more(一页一页翻动)
[archliu@archliu ~]# more 文件
· 空格键:代表向下翻一页
· Enter:代表向下翻一行
· /字符串:代表在这个显示的内容当中,向下查找字符串这个关键词
· :f:立刻显示出文件名以及目前显示的行数
· q:代表立刻离开 more,不再显示该文件内容
· b 或 [ctrl]-b:代表往回翻页,不过这操作只对文件有用,对管道无用
less(一页一页翻动)
[archliu@archliu ~]# less 文件
· 空格键:向下翻动一页
· [pagedown]:向下翻动一页
· [pageup]:向上翻动一页
· /字符串:向下查找字符串
· ?字符串:向上查找字符串
· n:重复前一个查找(与 / 或 ? 有关)
· N:反向的重复前一个查找
· g:前进到这个数据的第一行
· G:前进到这个数据的最后一行
· q:离开 less 这个程序
数据截取
head(取前面几行)
[archliu@archliu ~]# head [-n number] 文件
选项与参数:
-n:后面接数字,代表显示几行的意思
tail(截出后面几行)
[archliu@archliu ~]# tail [-n number] 文件
选项与参数:
-n:后面接数字,代表显示几行的意思
-f:表示持续刷新显示后面所接文件中的内容,直到按下[cttl]-c结束
查看非纯文本文件
od
[archliu@archliu ~]# od [-t TYPE] 文件
选项或参数:
-t:后面可以接各种【类型(type)】的输出,例如:
a:利用默认的字符来输出
c:使用 ASCII 字符来输出
d[size]:利用十进制(decimal)来输出数据,每个整数占用 size Bytes
f[size]:利用浮点数(floating)来输出数据,每个整数占用 size Bytes
o[size]:利用八进制(octal)来输出数据,每个整数占用 size Bytes
x[siez]:利用十六进制(hexadecimal)来输出数据,每个整数占用 size Bytes
修改文件时间:touch
Linux文件有三个主要的变动时间
- 修改时间(modification time,mtime):当文件的【内容数据】变更时,就会更新这个时间,内容数据指的是文件的内容,而不是文件的属性或权限
- 状态时间(status time,ctime):当该文件的【状态(status)】改变时,就会更新这个时间
- 读取时间(access time:atime):当【该文件的内容被读取】时,就会更新这个时间
- 【注】默认情况下,ls 显示出来的是该文件的 mtime
[archliu@archliu ~]# touch [-acdmt] 文件
选项或参数:
-a:仅自定义 access time
-c:仅修改文件的时间,若该文件不存在则不建立新文件
-d:后面可以接欲自定义的日期而不用当前的日期,也可以使用 --date="日期或时间"
-m:仅修改 mtime
-t:后面可以接欲自定义的日期而不用目前的时间,格式为[YYYYMMDDhhmm]