系统相关
首页 > 系统相关> > 1024 节日快乐!Linux find 命令介绍

1024 节日快乐!Linux find 命令介绍

作者:互联网

前言

  作为开发人员的的我们,经常会遇到在服务器中查询搜索需要的某个文件或者某个文件夹,Linux服务器并不像WIndows那样可以在可视化的界面进行搜索查找的操作,这时我们经常会使用到find命令来进行查询。你了解find的命令吗?本文将与大家一起分享find命令的操作。

初识find命令

  Linux find 命令用来在指定目录下查找文件。任何位于参数之前的字符串都将被视为欲查找的目录名。如果使用该命令时,不设置任何参数,则 find 命令将在当前目录下查找子目录与文件。并且将查找到的子目录和文件全部进行显示。

语法格式

  find 命令通常语法格式如下:

find   path   -option   [   -print ]   [ -exec   -ok   command ]   {} \;
复制代码

常用的查找方式

查找命令描述
-mount, -xdev只检查和指定目录在同一个文件系统下的文件,避免列出其它文件系统中的文件
-amin n在过去 n 分钟内被读取过
-anewer file比文件 file 更晚被读取过的文件
-cnewer file比文件 file 更新的文件
-empty空的文件-gid n or -group name : gid 是 n 或是 group 名称是 name
-ipath p, -path p路径名称符合 p 的文件,ipath 会忽略大小写
-name filename, -iname filename文件名称符合 name 的文件。iname 会忽略大小写
-size n文件大小 是 n 单位,b 代表 512 位元组的区块,c 表示字元数,k 表示 kilo bytes,w 是二个位元组。
-perm按执行权限来查找
-user username按文件属主来查找
-group groupname按组来查找
-mtime -n +n按文件更改时间来查找文件,-n指n天以内,+n指n天以前
-atime -n +n按文件访问时间来查找文件,-n指n天以内,+n指n天以前
-ctime -n +n按文件创建时间来查找文件,-n指n天以内,+n指n天以前
-nogroup查无有效属组的文件,即文件的属组在/etc/groups中不存在
-nouser查无有效属主的文件,即文件的属主在/etc/passwd中不存
-type b/d/c/p/l/f查是块设备、目录、字符设备、管道、符号链接、普通文件
-follow如果遇到符号链接文件,就跟踪链接所指的文件
-prune忽略某个目录

按名称查询

  将当前目录及其子目录下所有文件后缀为.java 的文件列出来:

find . -name "*.java"
复制代码

图片.png

  在当前目录及子目录中,查找大写字母开头的java文件

find . -name '[A-Z]*.java' 
复制代码

图片.png

  在某个指定目录下及其子目录中,查找B开头的文件

find /javafile -name 'B*'
复制代码

图片.png

按权限查找

  在当前目录及子目录中,查找属主具有读写执行,其他具有读执行权限的文件。由于本次使用的是root账户,因此对所有的文件及文件夹都有读写的操作权限。

 find . -perm 755

复制代码

图片.png

按时间查找

  查找50天内被更改过的文件 ,很久没有更新了,所以天数设置的比较多,在实际开发中查询都是1-2天的数据。

find . -mtime -50 -type f
复制代码

图片.png

   查找一天内被访问的文件

find . -atime -1 -type f
复制代码

图片.png

推荐专栏

从零开始搭建个人技术博客

Java全栈架构师

  作者介绍:【小阿杰】一个爱鼓捣的程序猿,JAVA开发者和爱好者。公众号【Java全栈架构师】维护者,欢迎关注阅读交流。

  好了,感谢您的阅读,希望您喜欢,如对您有帮助,欢迎点赞收藏。如有不足之处,欢迎评论指正。下次见。


作者:小阿杰
链接:https://juejin.cn/post/7001797756415623182
来源:稀土掘金
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

标签:1024,name,文件,子目录,命令,节日快乐,查找,Linux,find
来源: https://blog.csdn.net/haobitou/article/details/120943730