1.文件查找
文件查找的作用
资料很多忘记放哪里了,所以要通过查找方式进行搜索windows查找方式
计算机——>搜索框linux查找方式
使用命令工具搜索——>findfind命令语法
命令 | 路径 | 选项 | 表达式 | 动作 |
---|---|---|---|---|
find | [path..] | [options] | [expression] | [action] |
查找 | 地区 | 妹子 | 18-25岁 | ?? |
- find针对文件名称、类型、大小、修改时间等方式进行查找文件
1.按名称查找
#1.按名称进行查找
[root@localhost ~]# find /etc -name "passwd"
/etc/passwd
/etc/pam.d/passwd
#2.按照名称查找(不区分大小写)
[root@localhost ~]# find /etc -iname "passwd"
2.按文件大小查找size
#1.大于5M的文件
[root@localhost ~]# find /etc/ -size +5M # -5M 是小于5M的文件 /
5M是等于5M的文件
/etc/udev/hwdb.bin
3.按文件类型查找-type
f # 文件
d # 目录
s # socket套接字文件
l # 链接文件
c # 字符设备
b # 块设备
#1.查找当前目录下类型是文件的,在-type 后面加上文件类型参数
[root@localhost ~]# find ./ -type f -iname "*eth0" | xargs ls -l
4.按修改时间进行查找-mtime
#1.查找第七天
[root@localhost ~]# find / -type f -mtime 7
#2.筛选7天以前的内容删除,保留最近7天的内容
[root@localhost ~]# find ./ -type f -mtime +7 -name "file-*"
#3.筛选最近7天文件
[root@localhost ~]# find ./ -type f -mtime -7 -name "file-*"
#4.本地文件保留最近7天的备份文件, 备份服务器保留3个月的备份文件
find /backup/ -iname "*.bak" -mtime +7 -delete
find /backup/ -iname "*.bak" -mtime +180 -delete
5.按用户和组进行查找
[root@localhost ~] find /home -user jack
-user #查找属主
-group #查找属组
-nouser #查找没有属主
-nogroup #查找没有属组
6.find查找的处理动作
动作 | 含义 |
---|---|
打印查找到的内容(默认) ---ignore | |
-ls | 以长格式显示的方式打印查找到的内容 ---ignore | xargs ls -l |
- | delete删除查找到的文件 (删除目录,仅能删除空目录) ---ignore | xargs rm -f |
-ok | 后面跟自定义 shell 命令(会提示是否操作) ---ignore |
-exec | 后面跟自定义 shell 命令(标准写法 -exec ;) | xargs |
例:
记得文件的内容是什么,但是不清楚文件名称是什么,也不知道路 径在哪,怎么办?
find /etc/ -type f | xargs grep "log_group" --color=auto
7.find逻辑运算
符号 | 作用 |
---|---|
-a | 与(默认有-a) |
-o | 或 |
-not\! | 非 |
find /home/ ! -user root -ls #1.查找当前目录下,属主不是root的所有文件