• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
2022
博客园    首页    新随笔    联系   管理    订阅  订阅

find 命令

find 查找文件(文件夹)

find指令
-print (输出结果,默认)
-ls 类似于ls -lhi
根据名称查找一个文件
我记得,Linux系统中有一个文件叫redhat-release,我怎查找到它的位置。

[root@localhost ~]# find / -name "redhat-release"
/etc/redhat-release

参数
-name : 指定搜索的名称

-i : 忽略大小写

通配符

*:匹配所有(可以匹配空字符)

[] : 匹配中括号中的任意一个字符

[^] : 匹配除掉中括号中的内容之外的跟前面匹配的上的所有文件

! : 对整个搜索结果进行取反

[root@localhost ~]# find /root/ ! -name "abc[359]"
/root/
?:匹配任意一个字符(该字符不能为空)
根据文件大小查找

根据文件的体积查询出我们所需要的文件,find会自动四舍五入
参数
-a :并且(默认使用-a)

[root@localhost ~]# find /var/log -size +2k -size -10k
/var/log
-o : 或者
[root@localhost ~]# find /var/log -size -2k -o -size +10k
/var/log/tallylog

# b c (默认) w K M G

-size n (单位)

+n : 大于n个单位
-n : 小于n个单位
n : 等于n个单位

# 注:find查找同时打印出隐藏文件

# 注:n必须是整数,不能是小数
[root@localhost log]# find /root/ -size 8.8k
find: Invalid argument `8.8k' to -size
+n : 大于n个单位的文件
按时间进行查找
**-ctime: 文件变更时间(修改了位置 mv 包含创建时间)

atime : 访问时间(cat)

[root@localhost test]# rm -rf ./* && for i in 1 2 3 4 5 6 7 8 9;do date -s "2021-03-0\(i 11:30:30";touch 2021-03-0\)i.txt; done
Mon Mar 1 11:30:30 CST 2021

-mtime: 内容修改时间

# 正好3天以前创建的文件
[root@localhost test]# find /root/test/ -mtime +3
/root/test/

按照属性查找(-type)
格式
find 路径 -type 文件类型 指令

f(-) : 普通文件
d : 目录文件

l : 连接文件(快捷方式)
b : 设备文件
c : 字符设备文件
s : 套接字文件
p : 管道文件
[root@localhost dev]# find ./ -type b
./dm-1
./dm-0

posted @ 2021-03-12 19:23  博客之记  阅读(176)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3