Linux: 文件查找与读取的常用指令科普

概览 

  • find:查找文件(场景1~5)
  • grep:查找文件中的内容(场景6)
  • more、cat、tail、head:查看文件

场景一:(基于文件名查找:-name)

写了一个yinlei.txt,但忘记放在哪个文件夹下。

1.基于当前目录进行查找:

 

2.基于全局目录查找:

 

基于的路径越靠上,查找的时间就越长.

这里使用第2种解决问题:

其他过滤参数:

如果不记得文件名,也可以使用通配符:

场景二:(基于文件大小:-size)

 机器上在打印一个日志文件,日志文件持续打印没有情况导致日志文件很大磁盘都满了,这个时候想在整个linux系统下找到磁盘文件,并删除掉它

就可以看到当前目录下(可以自己指定目录路径)文件大小超过10M的文件

 

上面是查看每个文件具体的大小信息等

场景三:(基于文件类型:-type)

要查找文件夹,这个文件夹有相应的名字或大小等属性

上面的命令如果是文件或文件夹都会呗=被找出来。

如果要找一个文件夹:(我当前目录没有这个文件夹)d代表dir

如果是一个文件:f代表file

场景四:(基于最后一次读写时间:-[cma][time|min])

1.写修改:

1天之内修改过的:

50分钟之内修改过的:

1天前的这一天:

1天前进行的修改:

30分钟之内修改过的:

ctime、cmin中的c指的是change

mtime、mmin中的m是modify

只不过修改文件权限也是change的,不是modify的

2.读修改

amin等中的a是access

1分钟内读过的:


场景五:(基于文件夹的深度:-max|min depth)

要找一个文件,不想要深度很深的文件。

查找文件最深层数是3层的文件:

也可以用mindepth指定最小深度



场景六:(-r递归子路径, -n显示行号)

1. 知道文件在哪个文件夹下:

grep一般是搜索一个字符然后+该文件的名字

有的话就会把含有该字符的那行输出出来。

通过-n输出行:

2.不知道文件在哪个文件夹下:

让当前文件都去查找一下包含a的字符.

*指定的是当前目录下所有文件,文件夹是不能直接操作的 

如果想要让当前路径下的所有子路径也查找的话:

 

输出这一行和下面2行:

输出这一行和上面2行:


cat指令:

-n显示行号:

如果文件很大,会加载半天,占用内存,这时可以用more指令:(这里可以自己用大文件试试)

more指令:

通过b可返回上一页,通过q可以退出。

more还可以指定每页的行数:(这里是每页3行)

head指令 、tail指令:(反义词)

查看一个文件的头:(前几行)

指定前2行:

从尾部查看:

-f参数持续监听文件的变动:

通过ctrl+c停止。


查看磁盘的大小(使用情况)

查看当前路径下每个文件文件夹及其大小等:

通过-d指定最大的深度:

发布了356 篇原创文章 · 获赞 67 · 访问量 14万+

猜你喜欢

转载自blog.csdn.net/qq_39969226/article/details/104828370
今日推荐