ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

linux系统find命令的一些使用技巧

2022-05-16 15:01:08  阅读:152  来源: 互联网

标签:技巧 home find 查找 linux path 目录 name


 

参数: 1.-name选项:按照文件名称查找,允许使用通配符 2.-type选项:按照文件类型查找 3.-user选项:按照文件所有者查找 4.-size选项:按照文件大小查找 5.-maxdepth<目录层级〉:设置最大目录层级 6.-mindepth<目录层级〉:设置最小目录层级   示例 1.find /etc -name "net*.conf"   查找etc目录下所有文件名是以"net"开头,".conf"结尾的文件 2.find /boot -type d         查找boot目录下所有的目录 3.find /boot -size +1024k     查找boot目录下所有大于1024k的文件 4.find /home -user horse     查找home目录下所有归属者是horse的文件   基于目录深度搜索 find /home -maxdepth 3 -type f   查找向下最大深度限制为3层的普通文件 find /home -mindepth 2 -type f   搜索出深度距离当前目录至少2层目录的普通文件   查找时,忽略一个或多个目录下文件 注意:-path 的前缀要和find的目录一样
#忽略单个目录
#-a逻辑与,当-path "./var"为真,则执行-prune,返回真;-o逻辑或,增加查询条件,与前面排除目录条件组合输出符合的内容
理解方法:find . {{{-path "./var"} -a {-prune}} -o {-name ".log"}} -print
find . -path "./var" -a -prune -o -name ".log" -print
#忽略多个目录
find .  \( -path "./var" -o -path "./opt" \)  -a -prune -o -name ".log" -print
或者
#忽略单个目录,其中./var*表示./var下所有文件
find . ! -path "./var*"  -name ".log"
#忽略多个目录
find . ! -path "./var*"  ! -path "./opt*" -name "*.log"
  查找一个或多个目录下文件
#在当前目录下的dir1目录及dir1子目录下查找文件
find ./ -path "./dir1*" -name 1.txt
#在当前目录下的dir1、dir2目录及dir1、dir2子目录下查找文件
find ./ \( -path "./dir1*" -o -path "./dir2*" \) -name a
  查找范围时间内的文件 参数 -mmin N 分钟 -mtime N 小时 -newermt 指定日期文件
find /home -type f -mmin -1   //查找/home下在一分钟内修改的文件
find /home -type f -mmin +1   //查找/home下在一分钟前修改的文件
find /home -type f -newermt "2022-5-06"   //查找5月6号的文件
查询条件还有'-10 minutes' '-24 hours' '1 day ago ' 'yesterday'

 

标签:技巧,home,find,查找,linux,path,目录,name
来源: https://www.cnblogs.com/gpysir/p/16276942.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有