Linux find 命令介绍

简介: Linux find 命令介绍

前言


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


初识find命令


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


语法格式


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


find   path   -option   [   -print ]   [ -exec   -ok   command ]   {} \;


  • find :find命令关键字。
  • path:要查找的目录路径。其中可以使用的有:【~】【.】【/】三个路径,代表含义如下:" ~" 表示$HOME目录;"." 表示当前目录; "/" 表示根目录 。
  • options :表示查找方式,例如:-name,-user,-ctime等具体查找的方法。
  • print:表示将结果标准输出。
  • exec:对匹配的文件执行该参数所给出的shell命令。
  • ok:与exec作用相同,区别在于,在执行命令之前,都会给出提示,让用户确认是否执行 。
  • 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"

image.png  


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

find . -name '[A-Z]*.java' 

image.png


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

find /javafile -name 'B*'

image.png



按权限查找


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

find . -perm 755

image.png


按时间查找


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

find . -mtime -50 -type f

image.png


   查找一天内被访问的文件

find . -atime -1 -type f

image.png


目录
相关文章
|
16天前
|
Web App开发 Linux 网络安全
工作中常用到的Linux命令
工作中常用到的Linux命令
|
16天前
|
Web App开发 Java Linux
Linux之Shell基本命令篇
Linux之Shell基本命令篇
Linux之Shell基本命令篇
|
4天前
|
机器学习/深度学习 缓存 监控
linux查看CPU、内存、网络、磁盘IO命令
`Linux`系统中,使用`top`命令查看CPU状态,要查看CPU详细信息,可利用`cat /proc/cpuinfo`相关命令。`free`命令用于查看内存使用情况。网络相关命令包括`ifconfig`(查看网卡状态)、`ifdown/ifup`(禁用/启用网卡)、`netstat`(列出网络连接,如`-tuln`组合)以及`nslookup`、`ping`、`telnet`、`traceroute`等。磁盘IO方面,`iostat`(如`-k -p ALL`)显示磁盘IO统计,`iotop`(如`-o -d 1`)则用于查看磁盘IO瓶颈。
|
13天前
|
NoSQL Linux Shell
常用的 Linux 命令
常用的 Linux 命令
35 9
|
1天前
|
Ubuntu Linux Shell
linux免交互登陆远程主机并执行命令(密钥对和Expect)
linux免交互登陆远程主机并执行命令(密钥对和Expect)
|
1天前
|
Linux
【Linux】常用命令
【Linux】常用命令
20 0
|
1天前
|
安全 Ubuntu Linux
Linux 网络操作命令Telnet
Linux 网络操作命令Telnet
10 0
Linux 网络操作命令Telnet
|
2天前
|
Linux 数据安全/隐私保护
Linux常用命令实例带注释
Linux常用命令实例带注释
28 0
|
2天前
|
Linux 开发工具 数据安全/隐私保护
Linux(19)常用解压命令记录
Linux(19)常用解压命令记录
7 0
|
4天前
|
Linux Perl
Linux系统替换字符串常用命令
请注意,`sed`命令可以非常强大,可以根据不同的需求使用不同的选项和正则表达式来进行更复杂的字符串替换操作。
16 0