shell——find

来源:互联网 发布:杭州行知小学学区划分 编辑:程序博客网 时间:2024/05/27 09:46

find 查找

1. find . -name filename 当前目录查找filename

2. find . -iname filename 忽略大小写查找

3. find . ! -name "*.txt" 查找不包含txt文件

4. find . -maxdepth 1 -type f 列出离当前目录深度最大为1(即当前目录)的普通文件

5. find . -mindepth 2 -type f 列出离当前目录深度最小为2的普通文件

6. find . -type d 列出所有目录

7. find . -type f 列出所有普通文件

8. find . -type l 列出所有链接文件

9. find . -type f -atime -7 列出最近7天内被访问过的所有文件

10. find . type f -atime 7 列出恰好在7天内被访问过的所有文件

11.find . type f -atime +7 列出访问时间超过7天的所有文件

-atime 最近一次访问文件时间(以天为单位)

-mtime 最近一次修改文件时间(以天为单位)

-ctime 文件元数据(文件权限,所有权等)最近一次改变时间(以天为单位)

-amin 最近一次访问文件时间(以分钟为单位)

-mmin 最近一次修改文件时间(以分钟为单位)

-cmin 文件元数据(文件权限,所有权等)最近一次改变时间(以分钟为单位)

12. find . type f -newer file.txt 列出比file.txt修改时间更长的所有文件

13. find . -type f -size +2k 列出大于2k的文件

14. find . -type f -size -2k 列出小于2k的文件

15. find . -type f -size 2k 列出等于2k的文件

b——块(512字节)

c——字节

w——字(2字节)

k——千字节

M——兆字节

G——吉字节

16. find . -type f -name "*.swp" -delete 删除当前目录的所有.swp文件

17. find . -type f -perm 644 列出权限为644的所有文件

18. find . -type f -name "*.php" ! -perm 644 列出权限不为644的所有文件

19. find . -type f -user slynux 列出用户slynux拥有的所有文件

20. find . -type f -user root -exec chown slynux {} \; {}将被替换成相应的文件名,执行chown;

如果当前有文件test1.txt,test2.txt,则执行:chown slynux test1.txt;chown slynux test2.txt

21. find . -type f -name "*.c" -exec cat {} \; >all_c_file.txt 将目录中所有c文件拼接起来写入单个文件all_c_file.txt

22. find . -type f -mtime +10 -name "*.txt" -exec cp {} OLD \; 将10天前的所有.txt文件复制到OLD目录中



0 0
原创粉丝点击