exec解释

-exec参数后面跟的是command命令,它的终止是以;为结束标志的,所以这句命令后面的分号是不可缺少的,考虑到各个系统中分号会有不同的意义,所以前面加反斜杠。

{}花括号代表前面find查找出来的文件名。

使用find时,只要把想要的操作写在一个文件里,就可以用exec来配合find查找,很方便的。在有些操作系统中只允许-exec选项执行诸如lsls -l这样的命令。大多数用户使用这一选项是为了查找旧文件并删除它们。建议在真正执行rm命令删除文件之前,最好先用ls命令看一下,确认它们是所要删除的文件。 exec选项后面跟随着所要执行的命令或脚本,然后是一对儿{},一个空格和一个\,最后是一个分号。为了使用exec选项,必须要同时使用print选项。如果验证一下find命令,会发现该命令只输出从当前路径起的相对路径及文件名。

查找当前目录下所有.txt文件并打印出详细的文件信息

> find . -type f -name "*.txt" -exec ls -l {} \;

查找当前目录下内容修改时间是30天以前的.log文件并删除

> find . -type f -name "*.log" -mtime +30 -exec rm {} \;

shell中用任何方式删除文件之前,应当先查看相应的文件,一定要小心!当使用诸如mvrm命令时,可以使用-exec选项的安全模式。它将在对每个匹配到的文件进行操作之前提示你。

查找当前目录下内容修改时间是30天以前的.log文件并删除,删除前给出提示

> find . -type f -name "*.log" -mtime +30 -ok rm {} \;

在上面的例子中, find命令在当前目录中查找所有文件名以.log结尾、更改时间在30日以上的文件,并删除它们,只不过在删除之前先给出提示。 按y键删除文件,按n键不删除。

-exec使用grep

> find / -name "passwd*" -exec grep "root" {} \;

任何形式的命令都可以在-exec选项中使用。 在上面的例子中我们使用grep命令。find命令首先匹配所有文件名为passwd*的文件,然后执行grep命令看看在这些文件中是否存在一个root用户

查找当前目录下所有的.log文件并移动到指定目录

> find . -name "*.log" -exec mv {} ../rumenz \;

原文链接:https://rumenz.com/rumenbiji/linux-find-exec.html
微信公众号:入门小站

linux常用命令速查手册PDF下载

3669页vim参考手册PDF下载

阿里云ECS运维Linux系统诊断PDF下载

Docker速查手册PDF下载

Linux学习笔记【强悍总结值得一看】PDF下载

shell简明教程PDF下载

Linux之find exec相关推荐

  1. Linux下的exec函数族

    引入   创建子进程后,我们并不希望子进程执行父进程后续相同的内容,这时我们可以用exec函数族进行子进程的执行内容替换. exec函数族 Linux下的exec函数族,是指6个以exec开头的函数. ...

  2. Linux进程控制——exec函数族

    1.简介 在Linux中,并不存在exec()函数,exec指的是一组函数,一共有6个,分别是: #include <unistd.h> extern char **environ; in ...

  3. linux 命令 find -exec 操作的问题

    最近有这样一个需求,删掉某目录下的一些文件夹.其实就是名为"CVS"的文件夹,用过CVS的人都知道,CVS会在目录的每一级建立一个名为CVS的文件夹,里面放着CVS相关信息,我需要 ...

  4. linux基础知识——exec函数

    1.exec函数 \qquadfork()函数在执行之后,父子进程其实还是执行同一个程序,不同的只是同一个程序的不同分支.如果要想让子进程执行另外一个不同的程序,这时候需要调用exec函数,这时候子进 ...

  5. Linux下使用exec命令将文件与文件描述符关联

    在shell脚本下exec为系统自带的脚本命令,其作用是用来执行其他程序: 语法格式: exec (选项)(参数) 选项: -c:在当前环境下执行命令,即在当前shell脚本下执行,而不是打开一个新的 ...

  6. Unix/Linux编程:exec()族函数

    执行新程序:execve() 系统调用execve()可以将新程序加载到某一进程的内存空间.在这一操作过程中,将丢弃就有程序,而进程的栈.数据以及堆段会被新程序的相应不见所替换.在执行了各种C语言函数 ...

  7. Linux进程之exec镞函数的介绍(execl, execlp, execle, execv, execvp, execvpe)

    exec族函数函数的作用: 我们用fork函数创建新进程后,经常会在新进程中调用exec函数去执行另外一个程序.当进程调用exec函数时,该进程被完全替换为新程序.因为调用exec函数并不创建新进程, ...

  8. linux php 调用exec() 中,svn遇到的问题

    1 在搭建svn部署系统时,使用exec('svn up ') 时,遇到 svn: Can't convert string from native encoding to 'UTF-8'  问题, ...

  9. linux fork, system, exec()

    Linux进程管理 1.Fork() 转载于:https://www.cnblogs.com/xuanyuanchen/p/6247387.html

最新文章

  1. python 使用yield进行数据的流式处理
  2. 面试简单整理之spring、spring mvc
  3. 封装CoreGraphics的API简化绘图操作
  4. 用py2exe打包后的程序一闪而过
  5. webToImage (网页转图片)模块试用分享
  6. 使用Docker迁移与备份
  7. 解决:Unexpected token (START_OBJECT), expected START_ARRAY: need JSON Array to contain As.WRAPPER_ARRA
  8. 解决tar命令出现“time stamp XXX in the future”的办法
  9. Thinkphp开发时关闭缓存的方法
  10. python执行shell脚本报错_详解python执行shell脚本创建用户及相关操作
  11. Cknife(中国菜刀) and AntSword(中国蚁剑)使用
  12. adobe bridge cs6怎么卸载_怎么取消adobe bridge cs6 更新
  13. 人工智能最前沿的技术视频,大量教程
  14. 应广单片mini-c之$符号的说明
  15. 太难了 | 2019年互联网寒冬,如何防止自己被裁员失业?
  16. PostgreSQL导入导出CSV
  17. 阿尔山自驾游(2010年8月中旬,北京出发)
  18. CSS - 设置placeholder样式
  19. 【无标题】Java画板简易实现
  20. 3D动作捕捉实施推流虚拟人物角色动画的实时运动捕捉系统

热门文章

  1. python实现批量转换文件编码(批转换编码示例)
  2. 手把手教你玩转网络编程模型之完成例程(Completion Routine)篇(下)-转
  3. mysql搜索中文 有的匹配不出来_MYSQL-中文检索匹配与正则表达式
  4. 蓝桥杯 ADV-90 算法提高 输出日历
  5. 利用ambassador实现container跨主机连接
  6. VMware新建虚拟机
  7. ZJOI2019 线段树
  8. 聊聊hystrix的semaphore.maxConcurrentRequests属性
  9. AGG第四十二课 Blitting an image over another with transparency
  10. 利用Arduino对路由器进行调试,居然这么简单!