«

find命令参考

指尖二进制 • 1 年前 • 808 次点击 • LINUX


[TOC]

根据名称查找文件

1.使用当前目录中的名称查找文件
在当前工作目录中查找名称为test.c的所有文件。

[root@localhost ~]# find test
test

2.在主目录下查找文件
查找/home目录下的所有文件,名称为test。

[root@localhost ~]# find /home -name test
/home/test

3.使用名称和忽略案例查找文件
找到名称为test的所有文件,并在/home目录中同时包含大写和小写字母。

[root@localhost ~]# find /home -iname test
/home/test
/home/TEST

4.使用名称查找目录
在/目录中查找名称为test的所有目录。

[root@localhost ~]# find / -type d -name test

5.使用名称查找PHP文件
在当前工作目录中查找名为test.PHP的所有PHP文件。

[root@localhost ~]# find -type f -name test.php
./test.php

6.查找目录中的所有PHP文件
查找目录中的所有php文件。

[root@localhost ~]# find -type f -name "*.php"
./test.php

根据权限查找文件

1.查找777个权限的文件
查找权限为777的所有文件

[root@localhost ~]# find -type f -perm 0777 -print
./test.php

2.查找没有777权限的文件
查找所有文件未经许可777。

[root@localhost ~]# find /root/ -type f ! -perm 777

3.查找具有644个权限的SGID文件
查找权限设置为644的所有SGID位文件。

[root@localhost ~]# find / -perm 2644

4.找到具有551权限的粘滞位文件
查找权限为551的所有Sticky Bit设置文件。

[root@localhost ~]# find / -perm 1551

5.查找SUID文件
查找所有SUID集文件。

[root@localhost ~]# find / -perm /u=s

6.查找SGID文件
查找所有SGID设置文件

[root@localhost ~]# find / -perm /u=s

7.查找只读文件
查找所有只读文件。

[root@localhost ~]# find / -perm /u=r

8.查找可执行文件
查找所有可执行文件。

[root@localhost ~]# find / -perm /a=x

9.找到777个权限和Chmod到644的文件

[root@localhost ~]# find / -type f -perm 0777 -print -exec chmod 644 {} \;
/root/test.php

10.找到具有777权限的目录和Chmod到755
查找所有777个权限目录,并使用chmod命令将权限设置为755。

[root@localhost ~]# find / -type d -perm 0777 -print -exec chmod 755 {} \;
/root/test

11.查找并删除单个文件
找到一个名为test.c的文件并将其删除

[root@localhost ~]# find -type f -name "test.c" -exec rm -f {} \;

12.查找并删除多个文件
查找和删除多个文件,如.mp3或.txt,然后使用。

[root@localhost ~]# find -type f -name "*.php" -exec rm -f {} \;

13.查找所有空文件
在特定路径下查找所有空文件。

[root@localhost ~]# find /root/ -type f -empty
/root/.ssh/authorized_keys
/root/1.txt

14.查找所有空目录
将特定路径下的所有空目录归档。

[root@localhost ~]# find /root/ -type d -empty
/root/test

15.文件所有隐藏文件
要查找所有隐藏的文件,请使用以下命令。

[root@localhost ~]# find /root/ -type f -name ".*"

基于所有者和组的搜索文件

`.查找基于用户的单个文件
在所有者root的/ root目录下查找名为test.c的所有或单个文件。

[root@localhost ~]# find / -user root -name test.c
/root/test.c

1.查找基于用户的所有文件
查找~目录下属于用户jz的所有文件。

[root@localhost ~]# find /home/ ~ -user jz

2.查找基于组的所有文件
查找/home目录下属于Group Developer的所有文件。

[root@localhost ~]# find /home/ -group jz

3.查找用户的特定文件
查找~目录下的用户jz的所有.txt文件

[root@localhost ~]# find /home/ ~ -user jz -iname "*.txt"
/home/jz/1.txt

根据日期和时间查找文件和目录

1.查找最近50天修改的文件
查找50天后修改的所有文件。

[root@localhost ~]# find / -user root -name 1.txt
/root/1.txt

2.查找最近50天访问的文件
查找50天后访问的所有文件。

[root@localhost ~]# find / -atime 50

3.查找最后50-100天修改的文件
查找所有被修改超过50天以及少于100天的文件。

[root@localhost ~]# find / -mtime +50 -mtime -100c

4.在过去1小时内查找更改的文件
查找最近1小时内更改的所有文件

[root@localhost ~]# find / -cmin -60

5.在最近1小时内查找修改的文件
查找最近1小时内修改的所有文件。

[root@localhost ~]# find / -mmin -60

6.查找最近1小时内访问的文件
查找最近1小时内访问的所有文件。

[root@localhost ~]# find / -amin -60

根据大小查找文件和目录

1.找到40MB的文件
要找到所有40MB的文件,请使用。

[root@localhost ~]# find / -type f -size +40M

2.查找大小在40MB到50MB之间
找到大于40MB且小于50MB的所有文件。

[root@localhost ~]# find /boot/ -size +40M -size -50M

3.查找并删除40MB的文件
查找所有40MB文件并使用一个命令删除它们。

[root@localhost ~]# find /root/ -size +40 -exec rm -rf {} \;

4.查找特定文件并删除
查找超过10MB的所有.mp3文件,并使用一个命令删除它们

[root@localhost ~]# find / -type f -name *.mp3 -size +10M -exec rm {} \;
还没收到回复