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天前的时间。




  • 相关阅读:
    洛谷 P1567 统计天数【最长上升子序列/断则归一】
    洛谷 P3742 umi的函数【构造】
    洛谷 P1036 选数【背包型DFS/选or不选】
    nyoj zb的生日【背包型DFS/选or不选】
    POJ 3628 Bookshelf 2【背包型DFS/选or不选】
    【AHOI2013复仇】从一道题来看DFS及其优化的一般步骤和数组分层问题【转】
    洛谷 P1217 [USACO1.5]回文质数 Prime Palindromes【取回文数/数论/字符串】
    洛谷 P1004 方格取数 【多线程DP/四维DP/】
    Codeforces Round #449 (Div. 2) B. Chtholly's request【偶数位回文数】
    Codeforces Round #449 (Div. 2) A. Scarborough Fair【多次区间修改字符串】
  • 原文地址:https://www.cnblogs.com/tangshengwei/p/4989018.html
Copyright © 2011-2022 走看看