Linux四剑客详解——find

今天继续给大家介绍Linux基础知识,本文主要内容是Linux四剑客之一的find。Linux四剑客是指find、grep、sed和awk,这些命令可以单独作为命令使用,但是更广泛的是应用于Linux的shell脚本中,利用这几条命令可以使得shell脚本更加灵活,从而实现一些复杂脚本的编写。

一、find命令使用和参数

find命令主要是用于查找文件,find可以根据文件名、文件属性查找文件,其中文件属性包括文件大小、类型、时间、属主(组)等。find命令在查找文件时支持通配符,其主要参数如下:
-name 表示要查找的文件名
-type 表示要查找的文件类型,b表示块文件、d表示目录、l表示链接文件,f表示普通文件
-size 表示要查找的文件大小,+表示大于,-表示小于,单位可以为K、M和G
-user 表示要查找的文件属主
-group 表示要查找的文件属组
-mtime -atime -ctime 分别表示按照文件的更改时间、访问时间和创建时间来查找文件,+表示大于,-表示小于,单位为天
-mmin -amin -cmin 分别表示按照文件的更改时间、访问时间和创建时间来查找文件,+表示大于,-表示小于,单位为分钟
-exec 后面跟bash命令,表示在查找到文件后进行的操作

二、find命令使用示例

下面,我通过几个find的命令示例,来给大家介绍一下find的用法

find /var -name *.log
find /root -ctime -1
find /root -size +1M -size -10M

上述三条命令含义依次为:
1、表示查找/var目录下名字结尾是.log的文件
2、表示查找/root目录下创建时间在1天以内的文件
3、表示查找/root目录下大于1M但是小于10M的文件
这几条命令执行效果如下:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

三、find命令与命令执行

上一章第一条命令,我们实现了查找所有的.log文件,如果我们想把这些文件都复制到某一文件夹下,我们可以有两种做法。
一种是使用管道符,后面跟xargs命令

find /var -name *.log  | xargs -i cp {} /root/log_backup

另一种是使用find命令自带的-exec参数,命令如下所示:

find /var -name *.log /root/log_backup \;

这两种方式都可以实现将查找出来的文件执行某写命令,但是在执行顺序上却有所不同,-exec参数的方式是find命令自带参数,每次找到指定的文件,就会执行-exec后面的命令,但是采用xarfs的方式,则会等到find命令全部执行完毕后,再去执行相关命令,相比较而言,使用find参数自带的-exec参数比较多。
原创不易,转载请说明出处:https://blog.csdn.net/weixin_40228200

  • 6
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

永远是少年啊

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值