首页IT科技find命令查找文件怎么写(find命令 – 根据路径和条件搜索指定文件)

find命令查找文件怎么写(find命令 – 根据路径和条件搜索指定文件)

时间2025-05-05 04:23:12分类IT科技浏览3410
导读:find命令的功能是用于根据给定的路径和条件查找相关文件或目录,参数灵活方便,且支持正则表达式,结合管道符后能够实现更加复杂的功能,是Linux系统运维人员日常工作必须掌握的命令之一。...

find命令的功能是用于根据给定的路径和条件查找相关文件或目录            ,参数灵活方便                ,且支持正则表达式     ,结合管道符后能够实现更加复杂的功能            ,是Linux系统运维人员日常工作必须掌握的命令之一           。

find命令通常进行的是从根目录(/)开始的全盘搜索                 ,有别于whereis            、which                、locate……等的有条件或部分文件的搜索                 。对于服务器负载较高的情况     ,建议不要在高峰时期使用find命令的模糊搜索      ,会相对消耗较多的系统资源     。

语法格式:find [路径] [条件] 文件名

常用参数

-name 匹配文件名 -perm 匹配文件权限 -user 匹配文件所属主 -group 匹配文件所属组 -mtime 匹配最后修改文件内容时间 -atime 匹配最后读取文件内容时间 -ctime 匹配最后修改文件属性时间 -nouser 匹配无所属主的文件 -nogroup 匹配无所属组的文件 -newer 匹配比指定文件更新的文件 -type 匹配文件类型 -size 匹配文件大小 -prune 不搜索指定目录 -exec …… {}\; 进一步处理搜索结果

参考示例

全盘搜索系统中所有以.conf结尾的文件:

[root@linuxcool ~]# find / -name *.conf /run/tmpfiles.d/kmod.conf /etc/resolv.conf /etc/dnf/dnf.conf /etc/dnf/plugins/copr.conf /etc/dnf/plugins/debuginfo-install.conf /etc/dnf/plugins/product-id.conf /etc/dnf/plugins/subscription-manager.conf ………………省略部分输出信息………………

在/etc目录中搜索所有大于1M大小的文件:

[root@linuxcool ~]# find /etc -size +1M /etc/selinux/targeted/policy/policy.31 /etc/udev/hwdb.bin

在/home目录中搜索所有属于指定用户的文件:

[root@linuxcool ~]# find /home -user linuxprobe /home/linuxprobe /home/linuxprobe/.mozilla /home/linuxprobe/.mozilla/extensions /home/linuxprobe/.mozilla/plugins /home/linuxprobe/.bash_logout /home/linuxprobe/.bash_profile /home/linuxprobe/.bashrc

列出当前工作目录中的所有文件     、目录以及子文件信息:

[root@linuxcool ~]# find . . ./.bash_logout ./.bash_profile ./.bashrc ./.cshrc ./.tcshrc ./anaconda-ks.cfg ………………省略部分输出信息………………

在/var/log目录下搜索所有指定后缀的文件                 ,后缀不需要大小写      。

[root@linuxcool ~]# find /var/log -iname "*.log" /var/log/audit/audit.log /var/log/rhsm/rhsmcertd.log /var/log/rhsm/rhsm.log /var/log/sssd/sssd.log /var/log/sssd/sssd_implicit_files.log /var/log/sssd/sssd_nss.log /var/log/sssd/sssd_kcm.log /var/log/tuned/tuned.log /var/log/anaconda/anaconda.log /var/log/anaconda/X.log ………………省略部分输出信息………………

在/var/log目录下搜索所有不是以.log结尾的文件:

[root@linuxcool ~]# find /var/log ! -name "*.log" /var/log /var/log/lastlog /var/log/README /var/log/private /var/log/wtmp /var/log/btmp /var/log/samba

搜索当前工作目录中的所有近7天被修改过的文件:

[root@linuxcool ~]# find . -mtime +7 ./.bash_logout ./.bash_profile ./.bashrc ./.cshrc ./.tcshrc ………………省略部分输出信息………………

全盘搜索系统中所有类型为目录           ,且权限为1777的目录文件:

[root@linuxcool ~]# find / -type d -perm 1777 /dev/mqueue /dev/shm /var/tmp /tmp ………………省略部分输出信息………………

全盘搜索系统中所有类型为普通文件      ,且可以执行的文件信息:

[root@linuxcool ~]# find / -type f -perm /a=x /boot/vmlinuz-4.18.0-80.el8.x86_64 /boot/vmlinuz-0-rescue-c8b04558503242459d908c6c22a2d481 /etc/X11/xinit/xinitrc.d/50-systemd-user.sh /etc/X11/xinit/xinitrc.d/00-start-message-bus.sh /etc/X11/xinit/xinitrc.d/localuser.sh /etc/X11/xinit/Xclients /etc/X11/xinit/Xsession /etc/X11/xinit/xinitrc ………………省略部分输出信息………………

全盘搜索系统中所有后缀为.mp4的文件                 ,并删除所有查找到的文件:

[root@linuxcool ~]# find / -name "*.mp4" -exec rm -rf {} \;
声明:本站所有文章           ,如无特殊说明或标注,均为本站原创发布                 。任何个人或组织                 ,在未征得本站同意时                ,禁止复制            、盗用                 、采集     、发布本站内容到任何网站      、书籍等各类媒体平台           。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理      。

创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!

展开全文READ MORE
u盘格式化数据怎么恢复(u盘格式化弄回去教程)