点击返回 自学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空白行不编号。

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

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

举例3  cat 创建一个新文件,将其合并

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行

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行 

3.2 head命令

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

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

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

自学Linux Shell3.6-文件查看命令file cat more less tail head的更多相关文章

  1. 自学Linux Shell3.2-切换目录命令cd

    点击返回 自学Linux命令行与Shell脚本之路 3.2-切换目录命令cd 当登录系统并获得shell命令提示符后,你通常位于自己的主目录中. 使用pwd命令验证: pwd命令以绝对路径的方式显示用 ...

  2. 自学Linux Shell3.4-文件处理命令touch cp mv rm

    点击返回 自学Linux命令行与Shell脚本之路 3.4-文件处理命令touch cp mv rm 1. touch命令 一是用于把已存在文件的时间标签更新为系统当前的时间(默认方式),它们的数据将 ...

  3. 自学Linux Shell3.5-目录处理命令mkdir rmdir

    点击返回 自学Linux命令行与Shell脚本之路 3.5-目录处理命令mkdir rmdir 1. mkdir命令 创建一个或多个新的目录. mkdir 命令创建由 Directory 参数指定的一 ...

  4. linux中普通的文件查看操作(cat、more、less、head、tail)

    cat:基本是最常用的查看文件内容的linux命令. more 也是用来查看一个文件的内容.当文件内容太多,一屏幕不能占下,而你用cat肯定是看不前面的内容的,那么使用more就可以解决这个问题了.当 ...

  5. linux笔记:文件处理命令touch,cat,more,less,head,tail

    命令名称:touch功能:新建文件命令所在目录:/bin/touch用法:touch 文件名 命令名称:cat功能:显示文件内容命令所在目录:/bin/cat用法:cat [-n] 文件名参数:-n ...

  6. linux目录管理、时钟管理、文件查看命令

    inux的两种时钟: 系统时钟:由Linux内核通过CPU的工作频率进行的计时: 硬件时钟: hwclock: 显示硬件时钟 -s, --hctosys -w, --systohc cal:日历 目录 ...

  7. [转帖]Linux 硬件和系统配置查看命令小结

    https://blog.csdn.net/strongwangjiawei/article/details/8208825 转帖了不少 发现自己记住的还是不多.. Linux 硬件和系统配置查看命令 ...

  8. Linux kail安装及查看命令

    Linux kail安装及查看命令  apt-get update                          //更新源 apt-get install package             ...

  9. [svc]linux中的文件描述符(file descriptor)和文件

    linux中的文件描述符(file descriptor)和文件 linux为了实现一切皆文件的设计哲学,不仅将数据抽象成了文件,也将一切操作和资源抽象成了文件,比如说硬件设备,socket,磁盘,进 ...

随机推荐

  1. Spring学习日志之纯Java配置的MVC框架搭建

    依赖引入 <dependencies> <dependency> <groupId>javax.servlet</groupId> <artifa ...

  2. QQ聊天记录备份助手 v1.0——搜索、备份、恢复QQ聊天记录文件,重装系统必备

    项目地址 https://github.com/guoyaohua/QQBackUp 开发环境 Netbean JAVA 功能描述 自动搜索硬盘中的QQ聊天记录文件 可选择的备份QQ数据记录 还原QQ ...

  3. Centos7下部署两套python版本并存环境的操作记录

    需求说明:centos7.2系统的开发机器上已经自带了python2.7版本,但是开发的项目中用的是python3.5版本,为了保证Centos系统的正常运行,以及节省机器资源(不想因此再申请另外一台 ...

  4. linux下用户操作记录审计环境的部署记录

    通常,我们运维管理人员需要知道一台服务器上有哪些用户登录过,在服务器上执行了哪些命令,干了哪些事情,这就要求记录服务器上所用登录用户的操作信息,这对于安全维护来说很有必要.废话不多说了,下面直接记录做 ...

  5. linux及安全第四周总结

    学习内容:使用库函数API和C代码中嵌入汇编代码两种方式使用同一个系统调用 一.用户态.内核态 权限分级——为了系统本身更稳定,使系统不宜崩溃.(并不是所有程序员缩写的代码都很健壮!!) x86 CP ...

  6. 《Linux内核设计与实现》课本第四章学习总结

    进程调度 4.1 多任务 多任务操作系统就是能同时并发的交互执行多个进程的操作系统. 多任务系统分为两种: 抢占式多任务:Linux提供了抢占式的多任务模式,由调度程序来决定什么时候停止一个进程的运行 ...

  7. Android Studio 打包AAR和第三方静态库

    需求 现在有一个第三方库libstatic_add.a和对应的头文件static.h,要求封装一个Module,该Module依赖这个静态库,要求打包的Module包含该静态库. 方案 创建Andro ...

  8. Debian中APT的前世今生

    https://baike.baidu.com/item/apt-get/2360755 https://www.debian.org/doc/manuals/debian-handbook/sect ...

  9. MYSQL使用中字符编码一坑

    AJAX提交的字符出错,还以为是AJAX配置的错误呢!幸亏检查了一下MYSQL连接的字符集,发现开发库与本地库配置的字符集是也不一样的.

  10. 配置wbepack

    proxyTable:{ //反向代理 先建立连接 '/sexLady':{ target:url//请求地址 暗号:'/sexLady ' changeOrigin:true ,//类似baseUr ...