find高级应用

find高级使用,查找数据所在的位置

查找文件

• 根据预设的条件递归查找对应的文件

– find [目录] [条件1] [-a|-o] [条件2] ...

– 常用条件表示:

-type 类型(f文件、d目录、l快捷方式)

-name "文档名称"

-size +|-文件大小(k、M、G)

-user 用户名

-mtime 根据文件修改时间

#######################################################

]# find /boot/  -type l      #查找是快捷方式

/boot/grub/menu.lst

]# ls /boot/grub/menu.lst

]# find /boot/  -type f  #查找是文本文件

]# find /boot/  -type d  #查找是目录

#################################################

]# find  /boot/  -name  'v*'

]# find /etc/ -name 'passwd'

]# find /etc/ -name '*.conf'

]# find /etc/ -name '*tab'

]# touch /root/nsd01.txt

]# touch /root/nsd02.txt

]# mkdir /root/nsd19

]# find /root/  -name 'nsd*'

]# find /root/  -name 'nsd*'  -type f

]# find /root/  -name 'nsd*'  -type d

###################################################

]# find /boot/ -size +10M  #查找大于10M

]# find /boot/ -size -10M  #查找小于10M

]# find /boot/ -size +1M    #查找大于1M

]# find /  -user student  #查找所有者为student

  /proc:反映内存的数据,不占用磁盘空间

####################################################

-mtime 根据文件修改时间    都是过去时间

-mtime +10  #10天之前数据

-mtime -10  #最近10天之内数据

]# find  /root/  -mtime -2

]# find  /root/  -mtime +10

]# find  /var/  -mtime +90

#####################################################

  find扩展使用

  • 使用find命令的 -exec 操作

  – find .. .. -exec 处理命令  {} \;

    – 优势:以 {} 代替每一个结果,逐个处理,遇  \; 结束

]# find /etc/  -name '*tab'

]# find /etc/  -name '*tab' -exec  cp  {}  /opt  \;

]# ls /opt/

]# find /boot/ -size +10M

]# find /boot/ -size +10M  -exec  cp  {}  /mnt/  \;

]# ls /mnt/

案例4:查找并处理文件                                             

• 使用find命令完成以下任务

– 找出所有用户 student 拥有的文件

– 把它们拷贝到 /root/findfiles/ 文件夹中

]# mkdir /root/findfiles

]# find / -user student  -type f

]# find  /  -user  student  -type f  -exec  cp {}  /root/findfiles/  \;

]# ls -A /root/findfiles/

你可能感兴趣的:(find高级应用)