美文网首页
每日一个linux命令17-find之查询篇02

每日一个linux命令17-find之查询篇02

作者: 1519f8ccc7b0 | 来源:发表于2017-04-22 20:38 被阅读0次

find的功能如此之多,让我们继续上篇的示例
2.1 忽略大小写的查找 -iname

[root@test test]# find . -name f1
./catTest/f1
./findTest/f1
./nlTest/f1
./moreTest/f1
[root@test test]# find . -iname f1
./catTest/f1
./findTest/F1
./findTest/f1
./nlTest/f1
./moreTest/f1

2.2 指定最大搜索层级 -maxdepth N

[root@test test]# find -maxdepth 2 -iname f1
./catTest/f1
./findTest/F1
./findTest/f1
./nlTest/f1
./moreTest/f1
[root@test test]# find -maxdepth 1 -iname f1
[root@test test]# find -maxdepth 3 -iname f1
./catTest/f1
./findTest/F1
./findTest/f1
./findTest/2rd/F1
./findTest/2rd/f1
./nlTest/f1
./moreTest/f1

2.3 指定最小搜索层级 -mindepth N

[root@test test]# find -mindepth 2  -iname f1
./catTest/f1
./findTest/F1
./findTest/f1
./findTest/2rd/F1
./findTest/2rd/3rd/f1
./findTest/2rd/f1
./nlTest/f1
./moreTest/f1
[root@test test]# find -mindepth 2 -maxdepth 3  -iname f1
./catTest/f1
./findTest/F1
./findTest/f1
./findTest/2rd/F1
./findTest/2rd/f1
./nlTest/f1
./moreTest/f1
[root@test test]# find -mindepth 2 -maxdepth 4  -iname f1
./catTest/f1
./findTest/F1
./findTest/f1
./findTest/2rd/F1
./findTest/2rd/3rd/f1
./findTest/2rd/f1
./nlTest/f1
./moreTest/f1

2.4 根据文件的inode编号查找 -inum

[root@test findTest]# ls -i
265931 2rd  265924 f1  265928 F1  265925 f2  265929 F2  265926 f3  265930 F3  265927 f4
[root@test findTest]# cd ..
[root@test test]# find . -inum 265928
./findTest/F1

2.5 根据文件权限查找文件 -perm

[root@test findTest]# ls -vls
total 20
4 drwxr-xr-x 3 root root 4096 Apr 22 20:10 2rd
4 -rw-r--r-- 1 root root    3 Apr 22 20:03 F1
4 -rw-r--r-- 1 root root    3 Apr 22 20:03 F2
0 -rw-r--r-- 1 root root    0 Apr 22 20:03 F3
4 -rwxrwxrwx 1 root root    3 Jan  1 11:12 f1
4 -rwxrw--wx 1 root root    3 Apr 22 16:44 f2
0 -rw-r--r-- 1 root root    0 Apr 22 16:43 f3
0 -rw-r--r-- 1 root root    0 Apr 22 18:47 f4
[root@test findTest]# find . -perm 777
./f1
[root@test findTest]# find . -perm 763
./f2
[root@test findTest]# find . -perm -u=x
.
./f2
./f1
./2rd
./2rd/3rd
[root@test findTest]# find . -perm -g=x
.
./f1
./2rd
./2rd/3rd
[root@test findTest]# find . -perm -o=x
.
./f2
./f1
./2rd
./2rd/3rd

2.6 找出所有空文件 -empty

[root@test findTest]# find . -maxdepth 1 -empty
./f3
./f4
./F3
[root@test findTest]# find . -maxdepth 1 ! -empty
.
./F1
./F2
./f2
./f1
./2rd
[root@test findTest]# cat ./f3
[root@test findTest]# cat ./f1
f1

2.7 找到最大的5个文件

[root@test test]# find . -type f -exec ls -s {} \; | sort -n -r | head -5
24752 ./headTest/ping.log
8 ./moreTest/Kconfig
8 ./lessTest/Kconfig
4 ./nlTest/f1
4 ./lessTest/history.log
``
2.8 找出最小的5个文件
```sh
[root@test test]# find . -type f -exec ls -s {} \; | sort -n  | head -5
0 ./findTest/2rd/f3
0 ./findTest/2rd/F3
0 ./findTest/2rd/f4
0 ./findTest/f3
0 ./findTest/F3

2.9 查找所有目录

[root@test test]# find . -type d
.
./catTest
./findTest
./findTest/2rd
./findTest/2rd/3rd
./nlTest
./lessTest
./headTest
./moreTest

2.10 查找所有隐藏文件和目录

[root@test test]# find . -type f -name '.*' 
[root@test test]# find . -type d -name '.*' 
.

2.11 为常用的操作取别名

[root@test test]# alias top5="find . -type f -exec ls -s {} \; | sort -n -r | head -5;"
[root@test test]# top5
24800 ./headTest/ping.log
8 ./moreTest/Kconfig
8 ./lessTest/Kconfig
4 ./nlTest/f1
4 ./lessTest/history.log

相关文章

网友评论

      本文标题:每日一个linux命令17-find之查询篇02

      本文链接:https://www.haomeiwen.com/subject/rroszttx.html