linux中文本查找命令,Linux文本查找工具——find命令的用法详解

使用find命令可以根据指定的条件去系统中遍历查找文件,还可以对这些文件进行后续的操作,和另一个查找文件的命令locate不同的地方在于find命令是实时精确查找,不做模糊匹配,但是可以使用通配符。而locate是通过一个数据库文件来模糊查找。两者之间locate速度快,但是find最精确。

find命令基本格式:

#语法格式:

#find [查找路径] [查找条件] [查找后的动作]

find /etc -name "passwd" -exec ls -l {} \;

查找路径:指定具体搜索路径,默认为当前路径下。

查找条件:可以根据文件名、大小、权限、日期等进行查找。没有指定条件的话默认为当前路径下所有文件

处理动作:对符合条件的文件作出的操作,如删除、复制。默认为输出到标准输出

查找条件表达式:

-name:根据文件名进行查找

find /etc -name "fstab"

-user | -group :根据文件的所有者或者所属组进行查找

find /etc/ -user root

-iname:不区分文件名大小写进行查找

-uid | -gid:根据UID或GID查找

find /etc/ -uid 500

-nouser | -nogroup:查找没有属主或属组的文件

-size:根据文件大小查找,可以定义K或M等常用单位,默认单位是字节,还可以加+-符号进行描述,代表大于或小于所定义的数值大小,如果不加+-符号是为精确查找,查找时会自动将小数点向上取整,如10K代表9-10K的都会显示

find / -size +1M

-type  f:根据文件类型查找,f为普通文件

-type  d:根据文件类型查找,d为目录

-type  b:根据文件类型查找,b为块设备

-type  l:根据文件类型查找,l为链接文件

find / ! -type d

find /etc -type l

find /etc -type d

-mtime:根据时间戳查找系统中N天修改的文件, -n表示文件更改时间距现在n天以内,+n表示文件更改时间距现在n天以前

find / -mtime -5

-ctime  [+|-]  n:查找系统中N天被改变文件状态的文件,-n和+n同上

-atime  [+|-]  n:查找系统中N天访问的文件,-n和+n同上

-amin  [+|-]  n:查找系统中N分钟访问的文件,-n和+n同上

-cmin  [+|-]  n:查找系统中N分钟被改变文件状态的文件,-n和+n同上

-mmin  [+|-]  n:查找系统中N分钟被改变文件数据的文件,-n和+n同上

-mindepth n:从n级目录开始进行查找

-maxdepth n:最多查找到n级子目录

-perm:根据权限查找

find / -type f -perm 644

-perm  /777:三组权限位里但凡有一组权限匹配就查找出来

-perm -644:只要包含了指定权限就查找出来,比如777包含644也会显示出来

条件组合:

条件1  -a  条件2:逻辑与,当条件1与条件2都需要匹配才进行查找,也是默认动作,不加-a就默认是与

条件1  -o  条件2:逻辑或,当条件1与条件2中满足一个条件就查找出来

-not  | !:逻辑非

查找后的动作:

-print:将查找出来的文件全部输出到标准输出。默认操作。

-exec:其后跟上需要执行的命令,将会对查找出来的文件执行相关命令。{ }和;之间有空格,{ }是后向引用之前查找出来的文件。

find /var/logs -type f -mtime +7 -ok rm { } \;

-ok:和-exec的作用相同,只不过在执行每一个命令之前,都会给出提示,让用户来确定是否执行。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值