Linux学习-显示文件内容

正在学习Linux,记录一下学习历程。参考《Unix&Linux大学教程》(幽默感+事无巨细),进行了精简摘要和总结。奋斗

文件显示程序综述
用分页程序显示文件:

分页程序:用来每次一屏地显示文本数据的程序

主要有l:ess,more

用cat显示文件:

一次显示整个文件(不是每次一屏),若文件过长,则只能看到文件尾部

显示文件的一部分:

head:显示文件开头

tail:显示文件末尾

grep:显示所有包含(或不包含)特定模式的行

用文本编辑器显示文件:

主要有:vi,Emacs,gdeit,nano

用来显示二进制文件的程序:
主要有:hexdump,od


Less简介
less与more:

more这个名字来自于:在每次满屏后,都会有一个提示词more

more只能前进,不能后退。

这在实际的使用中,有许多不便,有人说:“我们需要一个向后退的more “。另一个人说:”是,我们需要less“。

less即可以less,也可以more。而more只能more。

使用less
命令
基本命令  
h 显示帮助信息
<space> 前进一屏
q 退出程序
高级命令  
g 跳到第一行
G 跳到最后一行
= 显示当文件名,行号和进度
<return> 前进一行
n<return> 前进n行
b 后退一屏
y 后退一行
ny

后退n行

d 前进(向下)半屏
u 后退(向上)半屏
<down> 前进一行
<up> 后退一行
ng 跳到第n行
np 跳到文本的n%处
/pattern 向前搜索指定模式
?pattren 向后搜索指定模式
n 重复搜索:相同方向
N 重复搜索:相反方向
!command 执行指定的shell命令
v 使用当前文件启动vi编辑器
-option 改变指定的option
_option 显示option的当前值

ps:每当搜索模式时,less将高亮显示文件中出现的搜索模式,高亮将一直保持,知道输入另一个搜索。

pps:less的很多命令直接取自vi

选项

-s  将多个空白行替换为一个空白行

-c  从顶端向下显示每一屏数据(默认为新行从平面底部向上滚动)

-C  写新数据之前将整个屏幕清空

-m  显示一个浏览文件百分比

-M  显示文件名,行号以及浏览文件百分比

-E  当显示到文件的末尾时,自动退出程序(适用于长文件)

-F  在整个文件可以一次显示时,自动退出程序(是拥有非常短的文件)

+command  command作为初始命令,指定less从什么地方开始显示数据

-I  忽略大小写

-N  显示行号

显示多个文件
命令
:n 切换到列表中的下一个文件
:p 切换到列表中的前一个文件
:x 切换到列表中的第一个文件
:e 在列表中插入一个新文件
:d 在列表中删除当前文件

:f

显示当前文件的名称(同=)

= 显示当前文件的名称
/*pattern 向前搜索指定的模式
?*pattern 向后搜索指定的模式

ps:当使用/*和?*搜索时,less将整个列表视作一个大文件。

观测不断增长的文件末尾

tail的-f选项,允许逐行观看一个文件的增长过程。

可以使其后台运行(使用&),也可以令起一个窗口。


原始模式和成熟模式

设备驱动程序:为操作系统和特定类型的设备(通常时某些类型的硬件)提供接口的程序。

终端驱动程序:当使用基于文件的CLI(命令行界面)时,控制终端的驱动程序。

终端驱动程序必须提供一个交互式用户界面,因此使用了线路规程。

线路规程:对数据进行特殊的预处理和后处理。

线路规程主要有两种:

模范模式(canonical mode):键入的字符积累在一个缓冲区(储存区域)中,除非按下<return>,否则不会向程序发送任何东西

原始模式(raw mode):只要键一按下,字符就直接发送给程序

shell工作在模范模式中,除非按下<return>健,否则不发送任何东西。

less工作在原始模式中,它能够完全接管命令行和屏幕,根据自己的需要显示行及处理字符。即按下健时,less能够立即响应。

ps:模范模式中,程序发送整行。原始模式中,程序发送单个字符。


猜你喜欢

转载自blog.csdn.net/qq_31730735/article/details/80476592