查看“Linux find”的源代码
←
Linux find
跳到导航
跳到搜索
因为以下原因,您没有权限编辑本页:
您请求的操作仅限属于该用户组的用户执行:
用户
您可以查看和复制此页面的源代码。
Linux find 命令用于在指定目录下查找文件和目录。 ==== Format ==== find [路径] [匹配条件] [动作] <b>Path</b>: 查找的目录路径,可以是一个目录或文件名,也可以是多个路径,多个路径之间用空格分隔,如果未指定路径,则默认为当前目录 <b>Expression</b>: 可选参数,用于指定查找的条件,可以是文件名、文件类型、文件大小等等。 * 按文件名称查找: -name pattern (支持使用通配符 * 和 ?) * 按文件类型查找: -type TYPE (TYPE = f(普通文件)、d(目录)、l(符号链接)等) * 按文件大小查找: -size [+-]N[cwbkMG] (+/- 大于/小于,N 是一个整数c(字节)、w(字数)、b(块数)、k/M/G) * 按修改时间查找: -mtime [+-]N (+/- 表示在指定天数前或后,N 是一个整数表示天数)(a=访问, c=状态变化, m=修改) * 按访问时间查找: -amin n:查找在 n 分钟内被访问过的文件 <b>动作</b>: 可选参数,用于对匹配到的文件执行操作,比如删除、复制等 * 列出它们的完整路径: -exec ls -l {} \; * 执行删除操作: -exec rm {} \; # 建议使用"|xargs rm -f;" <b>表达式关系运算</b>: * 默认关系间是逻辑与,如:-mtime +0 -mtime -3 表示 1 天以上,4 天以下 * -o 逻辑并,如:-type f -mtime 0 -o -mtime 2 表示 第 1 天内,第 3 天内(无第 2 天内,以及第二项并未指定文件,有可能出现目录) 第 1 天内表示 [0-24),第 3 天内表示 [48-72) === Sample === ==== 删除七天前文件 ==== 前两个有问题,就是加上 -name 之后,过滤出来的文件时间范围不对 # Err : find /u01/app/archivelog -mtime +7 -type f -name *.arc -exec rm -f {} \; # Err : find /u01/app/archivelog -mtime +7 -type f -name *.arc |xargs rm -f; --- find /u01/app/archivelog/ -mtime +7 -type f |xargs rm -f; ## !! 不要使用 cd $PATH,再 find . 方法,在 $PATH 不存在时会出问题 ==== 当前子目录增加执行权限 ==== 适用于 http 目录 List 中文件下载,无执行权限看不到目录等情况 chmod +x `find . -type d` ==== 在多台机器中查找大文件 ==== # m02:/data/ndb ./rrun ip_all "find / -type f -size +1G 2>/dev/null|grep '.zip'" [[分类:Develop]] [[分类:Linux]]
返回
Linux find
。
导航菜单
个人工具
登录
命名空间
页面
讨论
大陆简体
查看
阅读
查看源代码
查看历史
更多
搜索
导航
首页
最近更改
随机页面
目录
文章分类
侧边栏
帮助
工具
链入页面
相关更改
特殊页面
页面信息