设为首页 收藏本站
查看: 698|回复: 0

shell-----find命令

[复制链接]
发表于 2018-8-23 10:07:52 | 显示全部楼层 |阅读模式
  其实最近一直没闲着,学校的硬件课学的比较纠结,所以把人学的很恶心。但是闲下来还是决定多少在写点东西
  find的命令----作为linux下一个有效的工具,可以遍历当前目录甚至整个文件系统来查询某些文件,但是非常消耗资源,如果遍历的文件系统比较大的话可以&打到后台运行。

  •   find命令的基本格式
  find pathname -options [-print -exec -ok]
  1.pathname-----路径名称
  2.-print-----find命令将匹配的文件输出到标准输出
  3.-exec-----find命令对匹配的文件执行该参数所给出的shell命令
  -exec  COMMAND  { } \;--------{ }表示find所匹配出的内容
  4.-ok 和-exec的作用是一样的

  •   find的命令选项
      -name 按照文件名查找
    [root@server37 ~]# find /mnt/shell -name *.sh  
    /mnt/shell/sum.sh
      
    /mnt/shell/User_check.sh
      
    /mnt/shell/check_blank.sh
      
    /mnt/shell/mage/check_disk.sh
      
    /mnt/shell/mage/cpcommand.sh
      
    /mnt/shell/mage/test_shift.sh
      
    /mnt/shell/mage/networkcheck.sh
      -perm 按照文件权限查找
    [root@server37 ~]# find /etc -perm 640  
    /etc/logrotate.d/named
      
    /etc/sysconfig/auditd
      
    /etc/audisp/audispd.conf
      
    /etc/audisp/plugins.d/af_unix.conf
      
    /etc/audisp/plugins.d/syslog.conf
      
    /etc/libaudit.conf
      
    /etc/rndc.key
      
    /etc/audit/auditd.conf
      
    /etc/audit/audit.rules
      
    /etc/named.conf
      
    /etc/named.rfc1912.zones
      -iname filename 精确文件查找-----不区分大小写
    [root@server37 ~]# find /mnt/shell -name add2.sh  
    /mnt/shell/play/add2.sh
  •   -prune 忽略某个目录查找
  •   -user Username 根据属主查找-----同理有-group groupname按照属组查询
    [root@server37 ~]# find /mnt/shell -name *.sh "/mnt/shell/mage/" -prune -o -print  
    /mnt/shell
      
    /mnt/shell/sum.sh
      
    /mnt/shell/fstab
      
    /mnt/shell/grep.txt
      
    /mnt/shell/User_check.sh
      
    /mnt/shell/user.txt
      
    /mnt/shell/functions
      
    /mnt/shell/history.txt
    [root@server37 ~]# find / -user named  
    /var/named/dynamic
      
    /var/named/dynamic/managed-keys.bind.jnl
      
    /var/named/dynamic/managed-keys.bind
      
    /var/named/chroot/var/run/named
      
    /var/named/chroot/var/log
      
    /var/named/chroot/var/tmp
      
    /var/named/data
      -not -user 查找不是该用户的文件-----同理有-not -group 不是该属组的文件
  -gid 和-uid是按照文件的gid和uid来查找
  -nogroup和-nouser查找无有效属组合有效用户的文件

  •   find的文件属性查找

    •   -type
        b  块设备
        d  目录
        c  字符设备文件

  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处理,是一行行处理的,这个就可以不用循环一个个在队列里处理了



运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.iyunv.com/thread-555419-1-1.html 上篇帖子: Hbase shell操作总结 下篇帖子: SHELL编程语法
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表