今天继续给大家介绍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

Linux四剑客详解——find相关推荐

  1. [linux]四、详解vim编辑器(超详细)

    目录 1.vim编辑器是linux里的文本编辑器. 1.1.vi和vim的区别在哪里 1.2.linux里编辑的文本在windows里是否可以打开 1.3.为什么有乱码? 1.4.查看linux里的文 ...

  2. linux文件权限详解

    linux文件权限详解 一.文件和目录权限概述 在linux中的每一个文件或目录都包含有访问权限,这些访问权限决定了谁能访问和如何访问这些文件和目录. 通过设定权限可以从以下三种访问方式限制访问权限: ...

  3. linux sort 命令详解(转 )

    linux sort 命令详解 sort是在Linux里非常常用的一个命令,管排序的,集中精力,五分钟搞定sort,现在开始! 1 sort的工作原理 sort将文件的每一行作为一个单位,相互比较,比 ...

  4. 【Linux】Linux crontab 命令详解

    原文来自:http://ir.hit.edu.cn/~wsong/development/crontab.html Linux crontab 命令详解 在 Linux 中,任务可以被配置在指定的时间 ...

  5. linux sed p变量,Linux sed 命令详解系列教程之各种问题解决

    本文目录: 1 sed中使用变量和变量替换的问题 2 反向引用失效问题 3 "-i"选项的文件保存问题 4 贪婪匹配问题 5 sed命令"a"和"N& ...

  6. Linux网络编程---详解TCP

    Linux网络编程---详解TCP的三次握手和四次挥手_shanghx_123的博客-CSDN博客_tcp的协议数据单元被称为 TCP协议详解(TCP报文.三次握手.四次挥手.TIME_WAIT状态. ...

  7. linux系统安全详解

    linux系统安全详解 http://www.2cto.com/Article/201207/142181.html一,BIOS安全(硬件上的安全) 1,最基本最简单的安全配置,保障计算机硬件配置等不 ...

  8. LINUX任务(jobs)详解

    转自 : http://hi.baidu.com/daweilang/item/58db8d308e54f6d56d15e999 LINUX任务(jobs)详解 在用管理员执行一个命令后,用Ctrl+ ...

  9. Linux用户管理详解大结局(下)

    Linux用户管理详解(下) 我们已经可以通过创建不同的用户来防止其他人使用自己的账号,之后每个账户对应一个单独的用户密码,构成了一个基本的用户管理思路.为了方便管理还可以使用组来设置相同属性的用户. ...

  10. linux命令大全 美pdf,Linux编程命令详解_10331298_(美)Richard..pdf-得力文库

    Linux编程命令详解_10331298_(美)Richard....pdf General Ination 书名Linux编程命令详解 作者(美)Richard Petersen著:梁普选,刘玉芬等 ...

最新文章

  1. Object类的用法(三)
  2. [性能优化]UITableView性能优化的一点感悟及计算UILabel高度的新方法
  3. Redis常用命令集
  4. 牛客多校9 - Groundhog Chasing Death(质因子分解+思维)
  5. 知道接口地址 如何传数据_如何选显示器连接线?四种主流接口要知道
  6. 点击率预测的贝叶斯平滑
  7. arcobject c++实现检查要素是否为multipart(准确而且快 最主要是real 网上代码有问题)
  8. jQuery first()和last()函数示例
  9. Sharepoint Solution Gallery Active Solution时激活按钮灰色不可用的解决方法
  10. icom对讲机写频线定义_ICOM对讲机的常见故障和使用中的问题
  11. Java程序崩溃原因分析:错误日志分析及解决(Cannot allocate memory)
  12. 微信群打卡小程序_微信群不好管理?这几款小程序帮你管理微信群
  13. September 2006
  14. 将HEX文件通过Keil软件进行下载
  15. minio数据迁移工具rclone
  16. MACD与OBV结合,用OBV进行改进MACD指标公式
  17. 12864图片显示操作
  18. oracle 索引基本原理
  19. 信息系统建设和服务能力评估CS是由哪个机构来进行评估?
  20. 网页游戏开发入门教程

热门文章

  1. 《MYSQL必知必会》—2.MySQL简介
  2. keras搭建多层LSTM
  3. Python-split()函数的使用
  4. unicodedata模块
  5. ARM 指令集 比较指令
  6. csv 逗号数量不一样_lexin_common系列之CSV
  7. python 大图找小图_20 M 的图片能压缩到 2 M?20行Python代码,无损压缩千百张图片...
  8. mysql发生系统错误5_[玩转MySQL之一]MySQL体系架构简介
  9. 第51条:精简initialize与load的实现代码
  10. JMeter录制的两种方法