最新要闻
- 全球焦点!伯利时代首冠切尔西女足主帅:男队表现不佳,冠军献给球迷
- 售价10万以内 “电动吉姆尼”宝骏悦也内饰官图:小车也有双联屏
- 天天快消息!肉丸、鸡架超满足:东北抚顺麻辣拌6.6元/盒清仓大促
- AI孙燕姿大火!央视提醒:AI歌手翻唱或涉多项侵权行为
- 环球新动态:断轴!韩系豪华车捷尼赛思GV60上市两个月就召回
- 罕见!北方今年首轮高温来袭:山东要热成灿东了 局地39度 天天快播
- 一键斩断伸向孩子的“黑手” 36名未成年人被救助-精选
- 提速至140km/h!浙江最快高速公路来了:杭州到宁波仅1小时
- 就像买菜!男子花10万块买了8套房 最便宜一套1000元:网友感慨 天天滚动
- 遥遥领先苹果!余承东:华为WATCH4系列首发血糖评估 环球速看料
- 全国最大高铁“驾校”揭秘:16台模拟驾驶实训舱 如同开真高铁
- 全球热门:假把式!小区监控探头是粘上的,限期整改!
- 你手机装了几款APP?人均安装31个APP 年龄越小装的越多
- 摊主再回应买彩票中2574万 21人合买有钱一起赚:买一股能分百万 都分到钱
- 没人看了?美国付费有线电视用户跌至30年最低
- 如何使用多米诺骨牌作为派对主题_什么生日礼物送学生朋友最合适男生 世界简讯
手机
iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
- 警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- 男子被关545天申国赔:获赔18万多 驳回精神抚慰金
- 3天内26名本土感染者,辽宁确诊人数已超安徽
- 广西柳州一男子因纠纷杀害三人后自首
- 洱海坠机4名机组人员被批准为烈士 数千干部群众悼念
家电
天天热资讯!Linux文件查找命令之locate与find
locate与find是经常使用的Linux命令,刚接触Linux时对这两个命令的使用傻傻的分不清。现在我们来对比一下两个命令到底有哪些区别。 |
locate 让使用者可以很快速的搜寻档案系统内是否有指定的档案。其方法是先建立一个包括系统内所有档案名称及路径的数据库,之后当寻找时就只需查询这个数据库,而不必实际深入档案系统之中了。在一般的 distribution 之中,数据库的建立都被放在 crontab 中自动执行。
(相关资料图)
1. 命令格式:Locate [选择参数] [样式]2.命令功能:
locate命令可以在搜寻数据库时快速找到档案,locate为模糊查找,数据库由updatedb程序来更新,updatedb是由cron daemon周期性建立的,locate命令在搜寻数据库时比由整个由硬盘资料来搜寻资料来得快,但较差劲的是locate所找到的档案若是最近才建立或 刚更名的,可能会找不到,在内定值中,updatedb每天会跑一次,可以由修改crontab来更新设定值。(etc/crontab)
locate指定用在搜寻符合条件的档案,它会去储存档案与目录名称的数据库内,locate查询文件时,会去搜索/var/lib/mlocate/mlocage.db,寻找合乎范本样式条件的档案或目录录,可以使用特殊字元(如”*” 或”?”等)来指定范本样式,如指定范本为kcpa*ner, locate会找出所有起始字串为kcpa且结尾为ner的档案或目录,如名称为kcpartner若目录录名称为kcpa_ner则会列出该目录下包括 子目录在内的所有档案。
locate指令和find找寻档案的功能类似,但locate是透过update程序将硬盘中的所有档案和目录资料先建立一个索引数据库,在 执行loacte时直接找该索引,查询速度会较快,索引数据库一般是由操作系统管理,但也可以直接下达update强迫系统立即修改索引数据库。
3.命令参数:-e 将排除在寻找的范围之外。
-1 如果 是 1.则启动安全模式。在安全模式下,使用者不会看到权限无法看到 的档案。这会始速度减慢,因为 locate 必须至实际的档案系统中取得档案的权限资料。
-f 将特定的档案系统排除在外,例如我们没有到理要把 proc 档案系统中的档案 放在资料库中。
-q 安静模式,不会显示任何错误讯息。
-n 至多显示 n个输出。
-r 使用正规运算式 做寻找的条件。
-o 指定资料库存的名称。
-d 指定资料库的路径
-h 显示辅助讯息
-V 显示程式的版本讯息
4.使用实例:实例1:搜索etc目录下所有以sh开头的文件
[root@CentOS7 ~#]locate /etc/sh /etc/shadow/etc/shadow-/etc/shells[root@centos7 ~#]locate -r "/etc/\sh " # 正则,锚定词首/etc/shadow/etc/shadow-/etc/shells[root@centos7 ~#]
实例2:忽略大小写
[root@centos7 ~#]locate -i ~/d/root/Desktop/root/Documents/root/Downloads/root/d1/root/dd/var/lib/pcp/pmdas/root/domain.h[root@centos7 ~#]
实例3:更新数据库
[root@centos7 ~#]locate ~/a/root/anaconda-ks.cfg[root@centos7 ~#]updatedb[root@centos7 ~#]locate ~/a/root/a.sh/root/anaconda-ks.cfg[root@centos7 ~#]find1. 主要用途:
find命令是一个实时查找工具,通过遍历指定路径而完成对文件的查找;在使用该命令时,如果不选定参数,则在当前目录下查找子目录与文件并显示之;另外,任何位于参数之前的字符串,都将视为欲查找的目录名。由于是实时遍历查找,find有如下特性:精确实时查找,速度慢可能只搜索用户具备读取和执行权限的目录。
2.find语法:find [OPTION]... [查找路径] [查找条件] [处理动作]
查找路径:指定具体目标路径,默认为当前目录
查找条件:指定的查找标准,可以是文件名、大小、类型、权限等标准进行;默认为找出指定路径下的所有文件
处理动作:对符合条件的文件做操作,默认输出至屏幕
3.查找条件:1. 根据文件名和inode查找2. 根据属主、属组查找3. 根据文件类型查找4. 根据逻辑组合条件查找5. 根据文件大小来查找6. 根据时间戳来查找7. 根据权限来查找4.处理动作:1. -print: 默认动作,显示至屏幕2. -ls: 类似于对查找到的文件执行 ls -l 命令3. -delete: 删除查找到的文件4. -fls file: 查找到的所有长格式的信息保存至指定文件中5. -ok COMMMAND {} \; 对查找到的每个文件执行由COMMAND指定的命令,且都会交互式要求用户确认6. -exec COMMAND {} \; 对查找到的每个文件执行由COMMAND指定的命令;7. {}: 用于引用查找至的文件名称自身8. find 传递查找到的文件至后面指定的命令时,查找到所有符号条件的文件一次性传递给后面的命令9. 有些命令不能接受过多的参数,此时命令执行可能会失败,用 xargs 来规避此问题find |xargs COMMAND5.常用参数:文件名和inode类:
-name"文件名称":支持使用glob,*,?,[],[^] -iname"文件名称":不区分字母大小写 -inumn:按inode号查找 -somefilename:相同的inode号文件 -linksn:链接数为n的文件 -regex"PATTERN":以PATTERN匹配整个文件路径字符串,而不仅仅是文件名称
属主属组类:
-userUSERNAME:查找属主为指定用户(UID)的文件 -groupGROUPNAME:查找属组为指定组(GID)的文件 -uidUserID:查找属主为指定的UID号的文件 -gidGroupID:查找属组为指定的GID号的文件 -nouser:查找没有属主的文件 -nogroup:查找没有属组的文件
文件类型类:
b block(buffered)specialc character(unbuffered)speciald directoryp namedpipe(FIFO)f regularfilel symbolic links socket
逻辑组合条件类:
组合条件:
与:-a或:-o非:-not,!
摩根定律:
(非P)或(非Q)=非(P且Q)(非P)且(非Q)=非(P或Q)
文件大小类:
-size[+|-]#UNIT 常用单位:k,M,G#UNIT:(#-1,#] 如:5M表示(4M,5M]-#UNIT:[0,#-1] 如:-5M表示[0,5M]+#UNIT:(#,oo) 如:+5M表示(6M,oo)
关于文件大小类的解释:为什么-size 5M 还是找精确的5M而是表示(4M,5M], 试想文件的大小指什么?是指文件数据的大小还是包括了元数据后的大小,那你找元数据的大小有意义吗?但文件的大小肯定是包含元数据大小的,而我们一般以文件大小找文件时往往考虑的是文件数据的大小;另外,精确查找一定大小的文件意义不大;所以这里的大小会有1个单位的浮动。
时间戳类:
以”天”为单位: -atime[+|-]# #:[#,#+1) +#:[#+1,oo) -#:[0,#) -mtime -ctime以“分钟”为单位: -amin -mmin -cmin
关于时间戳类的解释:为什么-atime 3 表示的是 [3,4),这个就很好解释了,我们这儿所说的时间是指时间段而非时刻,一“天”与一“分钟”都是指一个时间段,只有[3,4)这个半闭半开的区间才能完整地表示第三天。
权限类:
-perm[/|-]MODE MODE:精确匹配权限 /MODE:任何一类(u,g,o)对象的权限中只要能一位匹配即可,属于或关系。以前用"+",CentOS7以"/"替代之 -MODE:每一类对象都必须同时拥有指定权限,属于与关系 0:表示不关注
示例:
find-perm644表示要严格匹配644的文件find-perm+222表示u,g,o任何一类用户有写权限即匹配find-perm-222表示仅严格匹配写权限,即每个用户必须要有写权限find-perm-002表示仅严格匹配other用户的写权限6.使用示例:
实例1:将配置文件备份到指定目录下并添加扩展名.org
[root@localhost~]#find.-name"*.conf"-execcp-r{}/testdir/{}.org\;[root@localhost~]#cd/testdir/[root@localhosttestdir]#lsa.conf.org b.conf.org[root@localhosttestdir]#
实例2:.提示删除存在时间超过3天以上的属主为young的临时文件
[root@localhost~]#find/tmp-ctime+3-useryoung-execrm-fr{}\;[root@localhost~]#
实例3:在主目录中查找可被其它用户写入的文件
[root@localhost~]#find~-perm-002/root/num[root@localhost~]#find~-perm-002-execchmodo-w{}\;[root@localhost~]#llnum--w--w----1rootroot35Jan2105:55num
实例4:查找/var目录下属主为root,且属组为mail的所有文件
[root@localhost~]#find/var-userroot -groupmail-ls#默认关系就是与1179652 4drwxrwxr-x 2root mail 4096Jan2311:04/var/spool/mail
实例5:查找/var目录下不属于root、lp、gdm的所有文件
[root@localhost~]#find/var!-userroot!-userlp!-usergdm
实例6:查找/var目录下最近一周内其内容修改过,同时属主不为root,也不是postfix的文件
[root@localhost~]#find/var/-mtime-7!-userroot!-userpostfix-ls1179676 4drwx------ 3daemon daemon 4096Jan2311:04/var/spool/at524399 4drwx------ 2nginx nginx 4096Jan2303:16/var/log/nginx524413 0-rw-r--r-- 1nginx root 0Jan2303:16/var/log/nginx/access.log524391 0-rw-r--r-- 1nginx root 0Jan2103:44/var/log/nginx/error.log132174 4drwx------ 3nginx nginx 4096Jan2103:44/var/lib/nginx132175 4drwx------ 7nginx nginx 4096Jan2103:44/var/lib/nginx/tmp132173 4drwx------ 2nginx root 4096Jan2103:44/var/lib/nginx/tmp/client_body132219 4drwx------ 2nginx root 4096Jan2103:44/var/lib/nginx/tmp/proxy132221 4drwx------ 2nginx root 4096Jan2103:44/var/lib/nginx/tmp/uwsgi132222 4drwx------ 2nginx root 4096Jan2103:44/var/lib/nginx/tmp/scgi132220 4drwx------ 2nginx root 4096Jan2103:44/var/lib/nginx/tmp/fastcgi
实例7:查找当前系统上没有属主或属组,且最近一个周内曾被访问过的文件
[root@bash~]#find/-nouser-o-nogroup-a-atime-7
实例8:查找/etc目录下大于1M且类型为普通文件的所有文件
[root@bash~]#find/etc/-size+1M-typef/etc/selinux/targeted/policy/policy.29/etc/udev/hwdb.bin
实例9:查找/etc目录下所有用户都没有写权限的文件
[root@bash~]#find/etc/!-perm/222/etc/pki/ca-trust/extracted/java/cacerts/etc/pki/ca-trust/extracted/openssl/ca-bundle.trust.crt/etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem/etc/pki/ca-trust/extracted/pem/email-ca-bundle.pem/etc/pki/ca-trust/extracted/pem/objsign-ca-bundle.pem/etc/lvm/profile/cache-mq.profile/etc/lvm/profile/cache-smq.profile/etc/lvm/profile/command_profile_template.profile/etc/lvm/profile/metadata_profile_template.profile/etc/lvm/profile/thin-generic.profile/etc/lvm/profile/thin-performance.profile/etc/openldap/certs/password/etc/gshadow/etc/dbus-1/system.d/cups.conf/etc/shadow/etc/gshadow-/etc/ld.so.conf.d/kernel-3.10.0-327.el7.x86_64.conf/etc/shadow-/etc/udev/hwdb.bin/etc/machine-id/etc/pam.d/cups/etc/sudoers
实例10:查找/etc目录下至少有一类用户没有执行权限的文件
[root@bash~]#find/etc/!-perm-111#至少有一类用户没有就是所有用户都没有
实例11:.查找/etc/init.d目录下,所有用户都有执行权限,且其它用户有写权限的文件
[root@bash~]#find/etc/init.d-perm-113/etc/init.d
或者
[root@bash~]#find/etc/init.d-perm-111-perm-002/etc/init.d
实例12:摩根定律找出/tmp目录下,属主不是root,且文件名不以f开头的文件
[root@centos7~]#find/tmp\(-not-userroot-a-not-name"f*"\)-ls即[root@centos7~]#find/tmp-not\(-userroot-o-name"f*"\)-ls
实例13:查找/etc/下,除/etc/sane.d目录的其它所有.conf后缀的文件
[root@bash~]#find/etc-path"/etc/sane.d"-prune-o-name"*.conf"
实例14:匹配文件路径或文件
[root@bash~]#find/usr/-path"*local"/usr/bin/abrt-action-analyze-ccpp-local/usr/share/doc/postfix-2.10.1/examples/qmail-local/usr/share/aclocal/usr/libexec/postfix/local/usr/local
实例15:基于正则表达式匹配文件路径
[root@bash~]#find.-regex".*txt$" ./.mozilla/firefox/4dqu966q.default/revocations.txt./vimrc/spf13-vim/LICENSE.txt./a.txt
原文来自:http://www.linuxidc.com/Linux/2017-02/140272.htm
本文地址:https://www.linuxprobe.com/locate-and-find.html
关键词:
天天热资讯!Linux文件查找命令之locate与find
从3s到25ms!看看京东的接口优化技巧,确实很优雅!! 当前速递
碳酸锂市价止跌急涨 需求兑现仍需时日 全球速递
全球焦点!伯利时代首冠切尔西女足主帅:男队表现不佳,冠军献给球迷
售价10万以内 “电动吉姆尼”宝骏悦也内饰官图:小车也有双联屏
天天快消息!肉丸、鸡架超满足:东北抚顺麻辣拌6.6元/盒清仓大促
AI孙燕姿大火!央视提醒:AI歌手翻唱或涉多项侵权行为
环球新动态:断轴!韩系豪华车捷尼赛思GV60上市两个月就召回
罕见!北方今年首轮高温来袭:山东要热成灿东了 局地39度 天天快播
java~"与运算"实现保留一个数的低8位 速看
一键斩断伸向孩子的“黑手” 36名未成年人被救助-精选
提速至140km/h!浙江最快高速公路来了:杭州到宁波仅1小时
就像买菜!男子花10万块买了8套房 最便宜一套1000元:网友感慨 天天滚动
遥遥领先苹果!余承东:华为WATCH4系列首发血糖评估 环球速看料
全国最大高铁“驾校”揭秘:16台模拟驾驶实训舱 如同开真高铁
全球热门:假把式!小区监控探头是粘上的,限期整改!
两类存款利率加点上限调整今起执行 部分中小银行迅速行动
你手机装了几款APP?人均安装31个APP 年龄越小装的越多
摊主再回应买彩票中2574万 21人合买有钱一起赚:买一股能分百万 都分到钱
没人看了?美国付费有线电视用户跌至30年最低
如何使用多米诺骨牌作为派对主题_什么生日礼物送学生朋友最合适男生 世界简讯
读SQL进阶教程笔记16_SQL优化让SQL飞起来
一万的票隔壁唱了九千八 粉丝吐槽听不清:盖过周杰伦声音 环球要闻
热点在线丨险遭退市 老牌日化企业广州浪奇突然宣布不再卖洗衣粉
多地出手严控老年代步车 全面封杀“老头乐”:网友吵翻 你支持谁?
当前关注:电饭煲内胆是什么材质 电饭煲内胆材质说明【详解】
全球热议:问题:Duplicate报错RMAN-03009, ORA-17628, ORA-19505
解决vmware虚拟机中的linux系统新增硬盘后无法启动
【C++】在使用PImpl技术时,template/typename的不常见用法 环球速看
南京芯视界发布新一代3D dToF芯片 性能远超索尼!
HTC又要出新手机了!但我建议 还是别出来丢人了
印度发现1.5米白化眼镜蛇:一般活不过24小时 但它不一样
天天微动态丨所有熊猫都是天生近视!有的生下来就800度?
瑞士德语文学专辑_关于瑞士德语文学专辑介绍
全球最新:JDG零封BLG 水晶哥:ELK暴毙次数太多了啊!回来吧我的小枣!
LitCTF crypto wp
世界速讯:监听容器中的文件系统事件
第139篇:微信小程序的登录流程|天天讯息
环球速看:EF命令行工具 migrate.exe 进行Code First更新数据库,6.3+使用ef6.exe
4月皮卡销量排名出炉 长城江淮大增 新能源有待突破|世界时快讯
20230514学习笔记——将代码提交到码云中 天天要闻
当前速递!【LeetCode字符串#extra】KMP巩固练习:旋转字符串、字符串轮转
世界之最大全100条_世界之最大全
大模型三大能力超越ChatGPT 千亿AI巨头科大讯飞否认做手机
大爷买二等座票带孙女坐一等座被赶 12306回应:不允许乱坐 全球热点
观点:一起来学rust|简单的mingrep
关于Kubernetes-v1.23.6-网络组件-calico的安装部署...|焦点快看
【焦点热闻】好莱坞编剧大罢工:GPT技术引发激烈争议
经典28定律?苹果在中国手机市场份额2成 赚走8成利润|每日简讯
电池只能充电500次?别太荒谬!收下这份真正的充电秘籍
【全球新要闻】摊主买彩票中2千多万激动砸摊位:称21人合买 明天就分钱
CentOS7搭建keepalived+DRBD+NFS高可用共享存储
每日精选:惠普打印机禁用非原装墨盒:官方称是为用户安全考虑
当前焦点!地狱笑话?大学母亲节配图是《进击的巨人》
泥鳅汤做法_泥鳅汤的烹饪方法 环球实时
已在轨生活160多天 航天员费俊龙从太空发回对母亲的节日祝福
热播电视剧将本科写成大专 高校不干了 官方道歉|天天聚看点
【热闻】首发紫光展锐T750!海信悄然推出F70 Lite手机
迭部县气象台发布大风蓝色预警信号【2023-05-14】
three.js 入门学习(二) 环球热资讯
DIY技巧:微星B760主板13600K降压教程 CPU温度暴降25℃
世界消息!专家称电动车要发展农村型号:支持反向充电 可增加收入
环球热门:1-2!“全校班”广州队又输了!3连败+开局5轮不胜,直冲降级区
基于SLAM系统建图仿真,完成定位仿真
天天观速讯丨安卓一年一迭代谷歌也累了:开始挤牙膏更新
女子把变心男友送的黄金卖了14万:没真心但有真金!自愿赠与或不用返还_天天快看
升级彩超5项:瑞慈体检套餐279元母亲节大促 今日热搜
久穿不易变形 放克220g宽松短袖29元大促
徐工四款新“国货之光”问世:百变狮王、自动灭火机器人 国产化率100% 世界观焦点
万胜智能: 关于使用部分闲置募集资金进行现金管理的进展公告
美团一面:Spring Cloud 如何构建动态线程池?
动态焦点:每天走路超这一步数 能大幅降低死亡率 上班族学起来
B站“离谱”专利获批:开车也能发弹幕了?|新要闻
热议:俄媒:泽连斯基拒绝教皇方济各调解俄乌提议
世界热议:我对IdentityServer4的初步了解
每日关注!JavaSE面试题【长期更新】
想玩《塞尔达传说:王国之泪》却不知道买哪款Switch?这篇选购攻略帮你避坑!
CPU散片学问大:碰见这两个型号千万别买|今日热搜
01-Linux命令和C语言基础|全球快讯
全球今亮点!西湖5平米商亭租金284万 每天约7780元引热议
母亲节 我来讲一个给妈妈换了“苹果全家桶”后的故事
首次发现!唾液含剧毒的五爪金龙现身云南:寿命长达150年
每日短讯:2023年5月14日融雪剂价格最新行情预测
国金证券:稳增长政策效果加速显现 居民消费修复延续性较强
D加密沦陷!黑客放出《生化危机4重制版》破解资源:好评如潮大作免费玩
AI起了反效果:4月微软Bing市场份额不升反降
特斯拉雨天高速失控!旋转、掉头、撞墙后 司机接着加速跑了
【报资讯】怀旧服磨刀石是什么专业制作的(怀旧服磨刀石)
前端语言串讲 | 青训营笔记
女子夜里打出租 全程直播监控!司机:不自信了_当前焦点
环球快资讯丨最后一道封印解除!ChatGPT重大升级 上线联网功能
检察院不批捕取保候审后还会收监吗|世界快播
女子旅游后高烧不退确诊“不死癌症” 医生:晒太阳是重要诱因
性能完全不达标 EPA报告:特斯拉4680电池能量密度比2170还低 当前观察
landrover是什么车多少钱一辆 landrover是什么车
Python学习之六_同时访问Oracle和Mysql的方法
上海张江全链条发力营造更优企业创新发展环境 今日快讯
放弃ZEKU自研芯片!OPPO张璇:产品生命周期软件维护不受影响_世界速读
江苏扬州:体育嘉年华嗨出狂欢味 百余场赛事活动贯穿全年-全球播资讯
曾为中国最大的汽车经销商 庞大集团濒临退市