Linux 查看文件内容(8)
我们知道在图形界面上查看文件内容只需要双击打开就好,那么在终端窗口里怎么查看文件内容呢?显然是需要能有一个命令能把文件内容显示在终端界面上。
查看文件内容主要有两个命令,分别是 cat 和 more,还有一个 grep命令可以查找文件对应内容。慢慢介绍。
cat
cat 命令可以用来 查看文件内容、创建文件、文件合并、追加文件内容 等功能。本篇主要介绍查看文件内容。
它的特点是会一次显示所有内容,适合查看内容较少 的文本文件。
可以在目录里准备两个文本文件,一个内容多点,一个内容较少点,分别为 demo1.txt 和 demo2.txt。使用 cat命令分别查看:
cat demo1.txt cat demo2.txt
为了看到效果,我把终端窗口调得较小,太大的窗口看不到区别:


可以看到,不管内容多长,cat 命令总是把所有内容都显示出来,当内容超过窗口时会自动到下一屏。你可能会奇怪我为什么要强调这一点,只要能看到内容就好了啊。说这个其实是因为另一个命令 more 跟它有所区别,下面会介绍。
在这之前,我们先看看 cat 的两个选项:
- -b:对非空输出行编号
- -n:对输出的所有行编号
其实就是在每一行输出内容前面加上编号,-b 是只对非空的行加编号,而-n 对所有的行都加编号。
说到这,我又悲剧了,我的Linux环境不管哪个选项都是对所有行编号:

建议大家还是在自己的电脑上装个虚拟机环境试试,比如Ubuntu。
more
more命令的区别在于,当文件超过窗口时,会分屏显示文件,说不如做,分别测试demo1.txt 和 demo2.txt文件:
more demo1.txt more demo2.txt


可以很明显的看到区别,当文件内容较少时,与cat效果没区别,当文件内容较多时,会显示一个提示信息,给出至今己显示的该文件的百分比:--More--(XX%),此时可以根据以下不同操作做出回应:
| 操作键 | 功能 |
|---|---|
| 空格键 | 显示文本下一屏内容 |
| Enter | 一次滚动文本的一行 |
| b | 回滚一屏 |
| f | 前滚一屏 |
| q | 退出 |
| /word | 搜索word字符串(word可替换) |
可自行尝试。
grep
Linux系统中grep命令是一种强大的文本搜索工具,使用格式:
grep 查找的目标字符 文件名
现在目录下有一 test.txt文件,看下它的内容:
cat test.txt //结果
hello world this is test hello linux this is test asdhsadyuscbjna
在这个文件里搜索 hello:
grep hello test.txt //结果
hello world
hello linux
可以看到,搜索结果会把包含所搜字符的整个行都输出来,注意,如果想要搜索多个单词,应该加上引号:
grep 'hello world' test.txt
选项
grep的选项也很多,这里只介绍三个:
- -n:显示匹配行及行号
- -v:显示不包含匹配文本的所有行(相当于求反)
- -i:忽略大小写
加上 -n:
grep -n hello test.txt //结果
:hello world
:hello linux
可以看到每行前面都加上了它们所在的行号。
-v 命令相当于对查找结果的求反:
grep -v hello test.txt //结果 this is test this is test asdhsadyuscbjnas
可以看到,它将不包含 hello 的行都输出来了,此时也可以加上行号的:
grep -vn hello test.txt //结果
:
:
:this is test
:
:
:this is test
:
:asdhsadyuscbjnas
-i 忽略大小写就不用多说了:
grep -i Hello test.txt //结果
hello world
hello linux
再啰嗦一句,Linux命令选项是可以连用的,你可以这样:
grep -nvi Hello test.txt
模式查找
所谓模式查找,就是正则表达式查找,grep支持正则模式查找,这里就简单说两个例子:
- ^a:行首,查找以 a开头的行
- b$:行尾,查找以 b结束的行
grep ^h test.txt //结果
hello world
hello linux
Linux 查看文件内容(8)的更多相关文章
- Linux 查看文件内容的命令
转载自:新浪博客 (观看档案内容 : cat, tac, more, less, head, tail, nl, 刚刚我们提到的都只是在于显示档案的外观,或者是移动与复制一个档案或目录而已,那么如果我 ...
- Linux查看文件内容
查看文件内容的命令: cat:连接文件并且打印在标准输出 tac:连接并且倒序打印文件 more:屏幕文件熟读过滤器 less head:输出文件的第一部分 tail:输出文件最后的部分 nl:输出文 ...
- Linux查看文件内容和压缩文件命令
查看文件内容 一些重要的目录: /usr/share/ 帮助文档.说明文档/var/log/ 日志/var/run/ 运行中程序/var/tmp 临时文件 根 ...
- Linux查看文件内容命令:less(转)
less与more类似,但使用less可以随意浏览文件,而more仅能向前移动,却不能向后移动,而且less在查看之前不会加载整个文件. 语法 less [参数] 文件 参数说明: -b <缓冲 ...
- linux查看文件内容命令tail、cat、tac、head、echo
1.tail tail -f test.log 你会看到屏幕不断有内容被打印出来. 这时候中断第一个进程Ctrl-C, linux 如何显示一个文件的某几行(中间几行) 从第3000行开始,显示100 ...
- Linux 查看文件内容
cat 由第一行开始显示档案内容 格式: cat [选项] [文件]... -A, --show-all 等价于 -vET -b, -- 对非空输出行编号 -e 等价于 -vE -E, --在每行 ...
- linux 查看文件内容的几种命令
cat #将文件内容输出到屏幕head #查看文件开头N行tail #查看文件末尾N行tailf #动态的查看的写入,有写入时屏幕输出vim.vi #文件编辑器,也可以当是查看文件{进入文件}grep ...
- linux查看文件内容的常见命令
1.cat命令,显示文件的所有内容,内容过多则显示最后一屏一般用于内容较少文件 2.more命令,分页显示文件的内容一般用于文件内容过多的文件,回车显示下一行,空格显示下一页,q/Q退出 3.head ...
- Linux查看文件内容命令:more(转)
Linux more命令类似cat ,不过会以一页一页的形式显示,更方便使用者逐页阅读,而最基本的指令就是按空白键(space)就往下一页显示,按b键就会往回(back)一页显示,而且还有搜寻字串的功 ...
随机推荐
- Beyong Compare 2.4.10刷新剩余日期bat批处理文件
@echo off % start )(window.close)&&exit REG DELETE "HKCU\Software\Scooter Software\Beyo ...
- C# 4.0
序言 动态绑定-dynamic class Program { static void Main(string[] args) { ; ; // Rest the mouse pointer over ...
- selenium实现chrome分屏截图的合并
selenium的截图功能在chrome下无法实现,但是可以操作滚动条来一屏一屏的截图,然后再合并成一张图,合并图片的代码在网上找的,十分感谢那位朋友,具体解决方案如下:直接上代码: def capt ...
- pyqt5对用qt designer设计的窗体实现弹出子窗口的示例
pyqt5对用qt designer设计的窗体实现弹出子窗口的示例 脚本专栏 python 1. 用qt designer编写主窗体,窗体类型是MainWindow,空白窗口上一个按钮.并转换成mai ...
- BootStrap之X-editable插件使用
项目背景 刚加入公司的新项目,主要在做开发工作.由于是新手,本周的工作是配合另外一个同事写前台页面.前台框架是Bootstrap,本文主要介绍一下项目需求的一个功能——表格行内编辑事件. 使用X-ed ...
- 完美解决前端跨域之 easyXDM 的使用和解析
前端跨域问题在大型网站中是比较常见的问题.本文详细介绍了利用 easyXDM 解决前端跨域的原理细节和使用细节,具体使用时可以在文中代码实例的基础上扩展完成. 0.背景 因个别网络运营商存在 HTTP ...
- IntelliJ IDEA 常用快捷键整理
1. -----------自动代码-------- 常用的有fori/sout/psvm+Tab即可生成循环.System.out.main方法等boilerplate样板代码 例如要输入for( ...
- 取消 vue 的严格模式
vue 中 有个 ' use strict ' 为严格模式,导致我们的一些东西都不可以使用,使用便会报错 解决方法:我们下载 babel-plugin-transform-remove-strict- ...
- 【C++】C++类的static 关键字理解
转载自:ZJE_ANDY static修饰类中成员,表示类的共享数据 1.static类成员 C++primer里面说过,static类成员不像普通的类数据成员,static类数据成员独立于一切类对象 ...
- react-native 环境安装常见问题
npm install react-native-cli -g react-native init yourproject npm install react-native run-ios 问题1:卡 ...