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)一页显示,而且还有搜寻字串的功 ...
随机推荐
- 一种sqlor的拆分
原脚本declare @Phone nvarchar(50)declare @CompanyNO nvarchar(50)set @Phone='13914124223'set @CompanyNO= ...
- Qt之去除窗口的标题栏、通过鼠标移动窗口
设置标题栏图标,位置与大小示例 #include<QApplication> #include<QWidget> #include<QDebug> #include ...
- (转)JS window对象的top、parent、opener含义
1.top 该变更永远指分割窗口最高层次的浏览器窗口.如果计划从分割窗口的最高层次开始执行命令,就可以用top变量. 2.opener opener用于在window.open的页面引用执行该w ...
- A. Blackjack
A. Blackjack time limit per test 2 seconds memory limit per test 256 megabytes input standard input ...
- 通过Flink实现个推海量消息数据的实时统计
背景 消息报表主要用于统计消息任务的下发情况.比如,单条推送消息下发APP用户总量有多少,成功推送到手机的数量有多少,又有多少APP用户点击了弹窗通知并打开APP等.通过消息报表,我们可以很直观地看到 ...
- Java中String.getBytes()
在Java中,String的getBytes()方法是得到一个操作系统默认的编码格式的字节数组.这个表示在不通OS下,返回的东西不一样! String.getBytes(String decode) ...
- spring eclipse xml自动提示
window -> preferences -> XML -> XML Catalog -> 在User Specified Entries新增加一个catalog
- SSH上传文件出现error
如上图,因为我在SSH上的用户没有对Linux服务器的文件夹的修改权限,我在linux上把文件夹的权限改为可读可改,就可以了
- react属性之exact
exact是Route下的一个属性,react路由会匹配到所有能匹配到的路由组件,exact能够使得路由的匹配更严格一些. exact的值为bool型,为true时表示严格匹配,为false时为正常匹 ...
- 定时刷新指定div层
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/ ...