shell-----find命令

时间:2014-03-19 01:26:04   收藏:0   阅读:488

 

        其实最近一直没闲着,学校的硬件课学的比较纠结,所以把人学的很恶心。但是闲下来还是决定多少在写点东西

        find的命令----作为linux下一个有效的工具,可以遍历当前目录甚至整个文件系统来查询某些文件,但是非常消耗资源,如果遍历的文件系统比较大的话可以&打到后台运行。

                    find pathname -options [-print -exec -ok]

                        1.pathname-----路径名称

                        2.-print-----find命令将匹配的文件输出到标准输出

                        3.-exec-----find命令对匹配的文件执行该参数所给出的shell命令

                                -exec  COMMAND  { } \;--------{ }表示find所匹配出的内容

                        4.-ok 和-exec的作用是一样的

                  -gid 和-uid是按照文件的gid和uid来查找

                 -nogroup和-nouser查找无有效属组合有效用户的文件

               p 管道文件

               l   符号链接文件

               f  普通文件

             -size 查找文件长度n块的文件

[root@server37 ~]# find /mnt -size 100
/mnt/httpd-2.2.26/modules/aaa/mod_authnz_ldap.c
/mnt/httpd-2.2.26/modules/experimental/mod_example.c

        

   查找更改时间在5日以内的文件

         当然时间的查找还有

       -atime

       -ctime

        这3个时间戳选项都是按照touch上所显示的时间戳查看的

find / -mtime -5 -print
/sys/module/nf_conntrack/sections/__ksymtab_gpl
/sys/module/nf_conntrack/sections/__kcrctab_gpl
/sys/module/nf_conntrack/sections/__param
/sys/module/nf_conntrack/sections/__ksymtab_strings
/sys/module/nf_conntrack/sections/__mcount_loc

 

 

说一下-exec把,个人觉得是个非常好用的命令,当然-ok和xargs和他有同样的功能

今天看到一个-exec的好例子分享一下吧

 

 

查看某个目录下的文件就以sh结尾为例吧,把查找的每个文件的第一行都放到一个new文件里面去

find /mnt/ -name *sh -type f  -exec head -1 {} >/tmp/new \;

这一条命令让我体会到-exec这个命令着实好用呀,因为{}内得到的是一个队列,一组数据,通过-exec处理,是一行行处理的,这个就可以不用循环一个个在队列里处理了

 

本文出自 “linux学习” 博客,转载请与作者联系!

shell-----find命令,布布扣,bubuko.com

原文:http://joe51cto.blog.51cto.com/7680547/1379270

评论(0
© 2014 bubuko.com 版权所有 - 联系我们:wmxa8@hotmail.com
打开技术之扣,分享程序人生!