zoukankan      html  css  js  c++  java
  • find 使用指南

                                               find 使用方法整理                                            

    -name  按照文件名查找文件。

    -perm  按照文件权限来查找文件。

    -user  按照文件属主来查找文件。

    -group  按照文件所属的组来查找文件。

    - n表示文件更改时间距现在n天以内,+ n表示文件更改时间距现在n天以前.

    -type  查找某一类型的文件,诸如:
    b - 块设备文件。
    d - 目录。
    c - 字符设备文件。
    p - 管道文件。
    l - 符号链接文件。
    f - 普通文件。

    -mmin n  查找系统中最后N**分钟被改变**文件数据**的文件
    -mtime n  查找系统中最后n*24**小时**被改变**文件数据**的文件

    find . -name "*.log" -mmin  +30 -exec rm {} ;  ##删除30分钟外的文件

    find ./ -mtime -5 -print   ##在系统根目录下查找更改时间在5日以内的文件
    find ./ -type f -mtime +5 -exec ls -l {} ;  ##查找更改时间在5日以前的文件显示出来
    find ./ -type f -mtime +5 -exec rm {} ;  ##查找更改时间在5日以前的文件并删除它们
    find ./ -type f -mtime +5 -ok rm {} ;  ##查找改时间在5日以上的文件,在删除之前先给出提示。 按y键删除文件,按n键不删除。


    find ./ -name "*.sh" -exec ls -l {} ;  ###查找名字为*.sh的文件并显示出来
    find ./ -name "*.sh" -exec rm {} ; ##查找*.sh结尾的文件并删除
    find ./ -name "*.sh" -ok rm {} ;  ##查找名字为*.sh的文件,在删除之前先给出提示。 按y键删除文件,按n键不删除。

    find ./ -type f -exec ls -l {} ;  ##查找当前目录下的普通文件

    find ~ -name "*.txt"  ##查找当前用户主目录下名字为“*.txt”的文件

    find /etc/ -name "passwd" -exec grep "apache" {} ;  ##查找一个文件中的内容

    find ./ -type f -perm 600 -exec ls -l {} ; ##按照文件的权限查找文件

    find ./ -type f -size 0 -exec ls -l {} ;  ##查找普通文件大小为0的文件
    find ./ -empty -exec ls -l {} ;  ##查找大小为0的目录或文件。

    find ./ -user root -exec ls -l {} ;  ####查找系统中所有属于root属主的文件;
    find ./ -group root -exec ls -l {} ;  ##查找系统中所有属于root组的文件;

    find / -type f -print | xargs grep "device"   ##用grep命令在所有的普通文件中搜索device这个词
        
    find ./ -name * -type f -print | xargs grep "DBO"  
    ##我们用grep命令在当前目录下的所有普通文件中搜索DBO这个词,用来取消find命令中的*在shell中的特殊含义

    #!/bin/bash
    LOGPATH="/data/conan/log1"
    LOGPATH1="/data/conan/log2"
    /bin/find $LOGPATH -mtime +5 -name "*.log" -exec rm {} ;
    /bin/find $LOGPATH -mtime +5 -name "*.gz" -exec rm {} ;
    /bin/find $LOGPATH -mtime +5 -name "*_md5" -exec rm {} ;
    /bin/find $LOGPATH1 -mtime +5 -name "*.log" -exec rm {} ;
    /bin/find $LOGPATH1 -mtime +5 -name "*.gz" -exec rm {} ;
    /bin/find $LOGPATH1 -mtime +5 -name "*_md5" -exec rm {} ;

    -d参数 ,说明要显示的是后面的字符串表示的时间,"1 day ago"  说明是1天前的时间。




  • 相关阅读:
    iOS Reachability检测网络状态
    开始运行命令大全
    IBM-x3650做RAID5更换硬盘后rebuild步骤分享
    使用VMware Converter Standalone Client进行虚拟机 P2V提示 权限不足,无法连接\ipadmin$的解决方法集锦
    共享文件夹 帐号密码正确,却一直提示输入帐号密码的解决办法
    Cisco 关闭命令同步提示信息
    EtherChannel(PAgP、LACP)基本配置--端口聚合--(转)
    Cisco Port-Channel 设置(链路聚合--重点)
    SQL Server 2008作业失败无法确定所有者是否有服务器访问权限
    windows server 2003 远程桌面最大连接数调整与windows 2008远程桌面后,本地帐号自动锁定
  • 原文地址:https://www.cnblogs.com/tangshengwei/p/4989018.html
Copyright © 2011-2022 走看看