zoukankan      html  css  js  c++  java
  • Linux文件的查找之find命令处理动作

    查找到文件之后的处理动作
    例如:找出来系统中比较大超过10G的并且存放时间超过一年的log文件并删除

    find / -name ".log" -size +10G -mtime +365 -ok mv {} /tmp/del ;
    

    只要有ok了,就必须要加 反斜杠和分号 ; 进行结束
    ok这个有个麻烦事就是有100个文件就要问100次,所以使用-exec,非交互方式,问都不带问的,比较危险
    所以不但要找到这些文件,还要处理这些文件
    事实上,find找到文件之后就默认隐藏了一个处理动作 -print

    -print:默认的处理动作,显示至屏幕
    -ls:类似于对查找到的文件执行“ls -l”命令
    -fls file:查找到的所有文件的长格式信息保存至指定文件中,相当于 -ls > file
    -delete:删除查找到的文件,慎用!
    -ok COMMAND {} ; 对查找到的每个文件执行由COMMAND指定的命令,对于每个文件执行命令之前,都会交互式要求用户确认
    -exec COMMAND {} ; 对查找到的每个文件执行由COMMAND指定的命令
    {}: 用于引用查找到的文件名称自身
    

    范例

    #备份配置文件,添加.orig这个扩展名
    find -name ".conf" -exec cp {} {}.orig ;
    #提示删除存在时间超过3天以上的joe的临时文件
    find /tmp -ctime +3 -user joe -ok rm {} ;
    #在主目录中寻找可被其它用户写入的文件
    find ~ -perm -002 -exec chmod o-w {} ;
    #查找/data下的权限为644,后缀为sh的普通文件,增加执行权限
    find /data –type f -perm 644 -name "*.sh" –exec chmod 755 {} ;
    
    * * * 胖并快乐着的死肥宅 * * *
  • 相关阅读:
    第15次Scrum会议(10/27)【欢迎来怼】
    C语言--第三周作业评分和总结(5班)
    例行报告(20171020-20171025)
    MongoDB主从复制
    副本集
    MongoDB索引
    聚合框架
    MongoDB查询操作
    MongoDB增删改
    MongoDB基本安装
  • 原文地址:https://www.cnblogs.com/bpzblog/p/12657340.html
Copyright © 2011-2022 走看看