自学Linux Shell3.6-文件查看命令file cat more less tail head

时间:2021-09-10 08:16:26

点击返回 自学Linux命令行与Shell脚本之路

3.6-文件查看命令file cat more less tail head

1.参看文件类型file

该命令用来识别文件类型,也可用来辨别一些文件的编码格式。它是通过查看文件的头部信息来获取文件类型,而不是像Windows通过扩展名来确定文件类型的。

file [-bcLvz][-f <名称文件>][-m <魔法数字文件>...][文件或目录...]
  • -b  列出辨识结果时,不显示文件名称。
  • -c  详细显示指令执行过程,便于排错或分析程序执行的情形。
  • -f<名称文件>  指定名称文件,其内容有一个或多个文件名称时,让file依序辨识这些文件,格式为每列一个文件名称。
  • -L  直接显示符号连接所指向的文件的类别。
  • -m<魔法数字文件>  指定魔法数字文件。
  • -v  显示版本信息。
  • -z  尝试去解读压缩文件的内容。
  • [文件或目录...] 要确定类型的文件列表,多个文件之间使用空格分开,可以使用shell通配符匹配多个文件。


2.参看整个文件

1.cat命令 一次显示整个文件,如果文件比较大,使用不是很方便; 一旦运行无法控制后面的操作。

2.more命令  显示文本内容时候,显示每页数据后暂停,此时可按空格健继续显示下一页数据,或按Q键停止显示。 只支持文本文件的基本移动。

3.less命令也可以分页显示文件,和more命令的区别就在于它支持上下键卷动屏幕,当结束浏览时,只要在less命令的提示符“: ”下按Q键即可。

        多数情况下more和less命令会配合管道符来分页输出需要在屏幕上显示的内容。

2.1 cat命令

cat命令是linux下的一个文本输出命令,通常是用于观看某个文件的内容的;
cat主要有三大功能:

  • 1.一次显示整个文件。cat   filename
  • 2.从键盘创建一个文件。cat  >  filename  只能创建新文件,不能编辑已有文件.
  • 3.将几个文件合并为一个文件。$cat   file1   file2  > file

cat [-AbeEnstTuv] [--help] [--version] fileName

  • -n 或 –number 由 1 开始对所有输出的行数编号
  • -b 或 –number-nonblank 和 -n 相似,只不过对于空白行不编号
  • -s 或 –squeeze-blank 当遇到有连续两行以上的空白行,就代换为一行的空白行
  • -v 或 –show-nonprinting

举例1  查看文件,一次显示所有内容, -n 加行号, -b空白行不编号。
自学Linux Shell3.6-文件查看命令file cat more less tail head

自学Linux Shell3.6-文件查看命令file cat more less tail head

自学Linux Shell3.6-文件查看命令file cat more less tail head

举例2 创建文件
在使用 "cat > filename.txt" 创建文件时,可采用下面步骤:

  • 键入cat > filename.txt 后回车 
  • 录入文本内容; 
  • 键入回车; 
  • 在键盘上按下Ctrl+D (或者键入Control-D)。 

 自学Linux Shell3.6-文件查看命令file cat more less tail head

举例3  cat 创建一个新文件,将其合并
自学Linux Shell3.6-文件查看命令file cat more less tail head

2.2 more命令

 more (more) 该命令一次显示一屏文本,满屏后停下来,并且在屏幕的底部出现一个提示信息,给出至今己显示的该文件的百分比,方便逐页阅读(file perusal filter for crt viewing) 。more名单中内置了若干快捷键

命令格式:

more [-dlfpcsu ] [-num ] [+/ pattern] [+ linenum] [file ... ] 

命令功能:

more命令和cat的功能一样都是查看文件里的内容,但有所不同的是more可以按页来查看文件的内容,还支持直接跳转行等功能。

命令参数:

  • +n      从笫n行开始显示
  • -n       定义屏幕大小为n行
  • +/pattern 在每个档案显示前搜寻该字串(pattern),然后从该字串前两行之后开始显示  
  • -c       从顶部清屏,然后显示
  • -d       提示“Press space to continue,’q’ to quit(按空格键继续,按q键退出)”,禁用响铃功能
  • -l        忽略Ctrl+l(换页)字符
  • -p       通过清除窗口而不是滚屏来对文件进行换页,与-c选项相似
  • -s       把连续的多个空行显示为一行
  • -u       把文件内容中的下画线去掉

常用操作命令

  • Enter    向下n行,需要定义。默认为1行
  • Ctrl+F   向下滚动一屏
  • 空格键  向下滚动一屏
  • Ctrl+B  返回上一屏
  • =       输出当前行的行号
  • :f     输出文件名和当前行的行号
  • V      调用vi编辑器
  • !命令   调用Shell,并执行命令 
  • q       退出more

 举例   more 分页显示,含有百分比 , +2 从第二行开始显示,-2定义屏幕大小为2行
自学Linux Shell3.6-文件查看命令file cat more less tail head

自学Linux Shell3.6-文件查看命令file cat more less tail head

自学Linux Shell3.6-文件查看命令file cat more less tail head

2.3 less命令

 less命令式more命令的升级

  • -b<缓冲区大小> 设置缓冲区的大小
  • -e 当文件显示结束后,自动离开
  • -f 强迫打开特殊文件,例如外围设备代号、目录和二进制文件
  • -g 只标志最后搜索的关键词
  • -i 忽略搜索时的大小写
  • -m 显示类似more命令的百分比
  • -N 显示每行的行号
  • -o<文件名> 将less 输出的内容在指定文件中保存起来
  • -Q 不使用警告音
  • -s 显示连续空行为一行
  • -S 行过长时间将超出部分舍弃
  • -x<数字> 将“tab”键显示为规定的数字空格

命令内部操作

2.3.1 按键功能如下:

  • b 向后翻一页
  • d 向后翻半页
  • h 显示帮助界面
  • Q 退出less 命令
  • u 向前滚动半页
  • y 向前滚动一行
  • 空格键 滚动一页
  • 回车键 滚动一行

1) 向前搜索

  • / : 使用一个模式进行搜索,并定位到下一个匹配的文本
  • n : 向前查找下一个匹配的文本
  • N : 向后查找前一个匹配的文本

2) 向后搜索

  • ? : 使用模式进行搜索,并定位到前一个匹配的文本
  • n : 向后查找下一个匹配的文本
  • N : 向前查找前一个匹配的文本

2.3.2 全屏导航

  • ctrl + F :向前移动一屏
  • ctrl + B :向后移动一屏
  • ctrl + D :向前移动半屏
  • ctrl + U :向后移动半屏

2.3.4  单行导航

  • j : 向前移动一行
  • k : 向后移动一行

2.3.5 其它导航

  • G : 移动到最后一行
  • g : 移动到第一行
  • q / ZZ : 退出 less 命令

2.3.6 编辑文件

  • v : 进入编辑模式,使用配置的编辑器编辑当前文件

2.3.7 标记导航

当使用 less 查看大文件时,可以在任何一个位置作标记,可以通过命令导航到标有特定标记的文本位置。

  • ma : 使用 a 标记文本的当前位置
  • 'a : 导航到标记 a 处

2.3.8  浏览多个文件

方式一,传递多个参数给 less,就能浏览多个文件。

less file1 file2

方式二,正在浏览一个文件时,使用 :e 打开另一个文件。

less file1
:e file2

当打开多个文件时,使用如下命令在多个文件之间切换

:n - 浏览下一个文件
:p - 浏览前一个文件

3.参看部分文件

3.1 tail 命令

tail [ -f ] [ -c Number | -n Number | -m Number | -b Number | -k Number ] [ File ]
参数解释:

  • -f 该参数用于监视File文件增长。
  • -c Number 从 Number 字节位置读取指定文件
  • -n Number 从 Number 行位置读取指定文件。
  • -m Number 从 Number 多字节字符位置读取指定文件,比方你的文件假设包括中文字,假设指定-c参数,可能导致截断,但使用-m则会避免该问题。
  • -b Number 从 Number 表示的512字节块位置读取指定文件。
  • -k Number 从 Number 表示的1KB块位置读取指定文件。

 tail file   默认显示文件后10行
 tail -3 file  显示文件后3行 

自学Linux Shell3.6-文件查看命令file cat more less tail head

自学Linux Shell3.6-文件查看命令file cat more less tail head

3.2 head命令

head 与 tail 就像它的名字一样的浅显易懂,它是用来显示开头或结尾某个数量的文字区块,tail 是看档案的结尾,而head 用来显示档案的开头至标准输出中,默认head命令打印其相应文件的开头10行。

head [参数]... [文件]...  

  •  -q 隐藏文件名
  • -v 显示文件名
  • -c<字节> 显示字节数
  • -n<行数> 显示的行数

 自学Linux Shell3.6-文件查看命令file cat more less tail head

自学Linux Shell3.6-文件查看命令file cat more less tail head