四、Shell编程中的常用工具

文件查找之find命令

语法格式

选项参数组

选项参数组2

find命令总结





    常用选项:
    
        -name           查找/etc目录下以conf结尾的文件 find /etc -name '*conf'
        -iname          查找当前目录下文件名为aa的文件,不区分大小写 find . -iname aa
        -user           查找文件属主为hdfs的所有文件    find . -user hdfs
        -group          查找文件属组为yarn的所有文件    find . -group yarn      
        -type           
        
            f       文件              find . -type f 
            d       目录              find . -type d
            c       字符设备文件      find . -type c
            b       块设备文件           find . -type b
            l       链接文件            find . -type l
            p       管道文件            find . -type p
            
        
        -size
        
            -n      小于大小n的文件
            +n      大于小于n的文件
            
            例子1:查找/etc目录下小于10000字节的文件       find /etc -size -10000c
            例子2:查找/etc目录下大于1M的文件                find /etc -size +1M
        
        -mtime      
        
            -n      n天以内修改的文件
            +n      n天以外修改的文件
            n       正好n天修改的文件
            
            例子1:查找/etc目录下5天之内修改且以conf结尾的文件  find /etc -mtime -5 -name '*.conf'
            例子2:查找/etc目录下10天之前修改且属主为root的文件 find /etc -mtime +10 -user root
            
        -mmin
            
            -n      n分钟以内修改的文件
            +n      n分钟以外修改的文件
            
            例子1:查找/etc目录下30分钟之前修改的文件        find /etc -mmin +30
            例子2:查找/etc目录下30分钟之内修改的目录        find /etc -mmin -30 -type d
        
        -mindepth n     表示从n级子目录开始搜索
        
            例子:在/etc下的3级子目录开始搜索     find /etc -mindepth 3 
        
        -maxdepth n     表示最多搜索到n级子目录
        
            例子1:在/etc下搜索符合条件的文件,但最多搜索到2级子目录     find /etc -maxdepth 3 -name '*.conf'
            例子2:
                find ./etc/ -type f -name '*.conf' -size +10k -maxdepth 2
        
            
        
        
    了解选项:
    
        -nouser     查找没有属主的用户
        
            例子:find . -type f -nouser
        
        -nogroup    查找没有属组的用户
        
            例子:find . -type f -nogroup
        
        -perm
        
            例子:find . -perm 664
        
        -prune
        
            通常和-path一起使用,用于将特定目录排除在搜索条件之外
            例子1:查找当前目录下所有普通文件,但排除test目录
                find . -path ./etc -prune -o -type f
            例子2:查找当前目录下所有普通文件,但排除etc和opt目录
                find . -path ./etc -prune -o -path ./opt -prune -o -type f
            例子3:查找当前目录下所有普通文件,但排除etc和opt目录,但属主为hdfs
                find . -path ./etc -prune -o -path ./opt -prune -o -type f -a -user hdfs
            例子4:查找当前目录下所有普通文件,但排除etc和opt目录,但属主为hdfs,且文件大小必须大于500字节
                find . -path ./etc -prune -o -path ./opt -prune -o -type f -a -user hdfs -a -size +500c
        
        -newer file1
        
            例子:find /etc -newer a
            
    操作:
    
    
        -print      打印输出
        
        -exec       对搜索到的文件执行特定的操作,格式为-exec 'command' {} \;
        
            例子1:搜索/etc下的文件(非目录),文件名以conf结尾,且大于10k,然后将其删除
            
                find ./etc/ -type f -name '*.conf' -size +10k -exec rm -f {} \;
                
            例子2:将/var/log/目录下以log结尾的文件,且更改时间在7天以上的删除
            
                find /var/log/ -name '*.log' -mtime +7 -exec rm -rf {} \;
                
            例子3:搜索条件和例子1一样,只是不删除,而是将其复制到/root/conf目录下
            
                find ./etc/ -size +10k -type f -name '*.conf' -exec cp {} /root/conf/ \;
                
        -ok         和exec功能一样,只是每次操作都会给用户提示
        
    逻辑运算符:
    
        -a          与
        -o          或
        -not|!      非
        
        例子1:查找当前目录下,属主不是hdfs的所有文件       
        
            find . -not -user hdfs  |   find . ! -user hdfs
        
        例子2:查找当前目录下,属主属于hdfs,且大小大于300字节的文件
        
            find . -type f -a -user hdfs -a -size +300c
            
        例子3:查找当前目录下的属主为hdfs或者以xml结尾的普通文件
            
            find . -type f -a \( -user hdfs -o -name '*.xml' \)
                
            
            
  • find出来的结果交给{}作为处理的中间结果,-exec 对文件处理的命令 {} ;
  • find /etc -size -1M -exec cp {} ./test5/ ; 查找大小小于1M的文件然后复制他们到./test5/目录下;
  • find . type f -ok rm -rf {} ; 表示删除前做提示

find、locate、whereis 、which命令总结及场景分析

locate命令

updatedb

cron定时任务将文件信息更新到这个数据库中

whereis命令

which命令

场景总结
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 159,015评论 4 362
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,262评论 1 292
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,727评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,986评论 0 205
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,363评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,610评论 1 219
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,871评论 2 312
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,582评论 0 198
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,297评论 1 242
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,551评论 2 246
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,053评论 1 260
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,385评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,035评论 3 236
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,079评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,841评论 0 195
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,648评论 2 274
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,550评论 2 270

推荐阅读更多精彩内容

  • 转自:https://www.cnblogs.com/gaojun/p/3359355.html ls命令就是li...
    xingzai阅读 547评论 0 0
  • Linux下一切皆文件,但是文件由于文件的属性的不同,在查找上可以针对不同的文件做相应的查找以便加快查询速度和减少...
    常青藤成阅读 1,003评论 0 0
  • 1.fedora、redhat、Centos、 suse、ubuntu都是常见的linux 2./分区、swap分...
    liudai123阅读 834评论 0 3
  • 众所周知,电影可以按照题材分类,然而题材本身是如何定义的?由谁来判定某部电影属于哪个题材?也就是说同一题材的电影具...
    老马的程序人生阅读 778评论 0 1
  • 又看了一遍神奇遥控器,这部貌似喜剧的电影对心灵深处的触动一点也不亚于“正经”电影。 看到迈克幸运地拥有了一个、可以...
    清水浅蓝阅读 554评论 0 0