Linux学习笔记(三.文件内容命令&其他命令)

 P36~41

Linux学习笔记(三.文件内容命令&其他命令)

cat和more的区别:当文件内容很多时,建议用more,因为more可以分屏显示;而文件内容较少时,建议使用cat,cat是一次显示所有文件内容。

Linux学习笔记(三.文件内容命令&其他命令)

如下图 -b 选项不给空行编号

Linux学习笔记(三.文件内容命令&其他命令)

 如下图 -n选项给所有行编号(包括空行)

Linux学习笔记(三.文件内容命令&其他命令)

对于more命令不再做示例。

Linux学习笔记(三.文件内容命令&其他命令) 

下图中as为要搜索的文本,123.txt指要在123.txt这个文件中搜索

输出所在的行并高亮显示要搜索的字符

第二个加上参数 -n显示匹配行及行号

Linux学习笔记(三.文件内容命令&其他命令)

-v 把不包含g的行输出出来

Linux学习笔记(三.文件内容命令&其他命令)

-v -n连用(-vn):不包含的行和行号都输出出来了

Linux学习笔记(三.文件内容命令&其他命令)

-i选项忽略大小写

eg:下图中Hello中H是大写的,所以grep hello 123.txt无输出

但是grep -i hello 123.txt就会输出包含了Hello(或hello)的行

如果要搜索字符串(带空格)就得用 引号引起来!

Linux学习笔记(三.文件内容命令&其他命令)

常用的两种模式查找:

Linux学习笔记(三.文件内容命令&其他命令)

示例:

在要搜索的文本后加一个$就是之搜索在行尾处的对应文本

在要搜索的文本前加一个^就是之搜索在行首处的对应文本

Linux学习笔记(三.文件内容命令&其他命令)

Linux学习笔记(三.文件内容命令&其他命令)

如下图会把文本在终端中再显示一遍(一把不单独使用,而和重定向配合使用):

Linux学习笔记(三.文件内容命令&其他命令)

Linux学习笔记(三.文件内容命令&其他命令)

示例:
将Hello Python 输出到文件a中,如果没有文件a就会创建一个文件a

然后cat a查看了文件a的内容

列表显示了当前目录的文件及文件夹(子目录)

ls -lh > a 将ls -lh显示的文件内容输出到文件a中,如果没有a就创建

Linux学习笔记(三.文件内容命令&其他命令)

同理也可以tree > a就会将树状图输入到文件a中

记住 > 是将内容覆盖到文件中!即文件原来的内容就没有了!

上面的命将>换成>>同样适用,只不过内容是追加到文件末尾!

echo 和 重定向 的另一个好处如下图:可以创建文件时就指定输入的内容,而touch就只能创建空文件

Linux学习笔记(三.文件内容命令&其他命令)

Linux学习笔记(三.文件内容命令&其他命令)

即第二个命令会通过管道将第一个命令的输出做二次处理。

eg:执行了如下语句,由于显示home目录下所有文件(包括隐藏文件)一个屏放不下,这时可利用管道,将ls -lha ~的输出用more(分屏显示出来,如第二张图)

Linux学习笔记(三.文件内容命令&其他命令)

Linux学习笔记(三.文件内容命令&其他命令)

又如下图可以利用管道查找home目录下包含Do的文件或目录(本来grep只是对文本文件进行查找,但通过ls输出的文本后相可以转化为对这些文件或目录查找):

Linux学习笔记(三.文件内容命令&其他命令)