一、find的作用?
•递归式查找
•根据预设的条件递归查找对应的文件
二、find使用方法
– find [目录] [条件1]…
-type 类型(f文本文件、d目录、l快捷方式)
代码如下:
-
<span style="color:#000000"><code class="language-c"><span style="color:#999999">[</span>root@localhost <span style="color:#669900">~</span><span style="color:#999999">]</span># find <span style="color:#669900">/</span>home <span style="color:#669900">-</span>type f -
<span style="color:#999999">[</span>root@localhost <span style="color:#669900">~</span><span style="color:#999999">]</span># find <span style="color:#669900">/</span>root <span style="color:#669900">-</span>type f -
<span style="color:#999999">[</span>root@localhost <span style="color:#669900">~</span><span style="color:#999999">]</span># find <span style="color:#669900">/</span>home <span style="color:#669900">-</span>type d -
<span style="color:#999999">[</span>root@localhost <span style="color:#669900">~</span><span style="color:#999999">]</span># find <span style="color:#669900">/</span>root <span style="color:#669900">-</span>type d -
<span style="color:#999999">[</span>root@localhost <span style="color:#669900">~</span><span style="color:#999999">]</span># find <span style="color:#669900">/</span>etc <span style="color:#669900">-</span>type l -
</code></span>
-name “名称”
代码如下:
-
<span style="color:#000000"><code class="language-c"><span style="color:#999999">[</span>root@localhost <span style="color:#669900">~</span><span style="color:#999999">]</span># find <span style="color:#669900">/</span>etc<span style="color:#669900">/</span> <span style="color:#669900">-</span>name <span style="color:#669900">"*.conf"</span> -
<span style="color:#999999">[</span>root@localhost <span style="color:#669900">~</span><span style="color:#999999">]</span># find <span style="color:#669900">/</span>etc<span style="color:#669900">/</span> <span style="color:#669900">-</span>name <span style="color:#669900">"*tab*"</span> -
<span style="color:#999999">[</span>root@localhost <span style="color:#669900">~</span><span style="color:#999999">]</span># find <span style="color:#669900">/</span>etc<span style="color:#669900">/</span> <span style="color:#669900">-</span>name <span style="color:#669900">"passwd"</span> -
</code></span>
-size +或-文件大小(k、M、G)
-
<span style="color:#000000"><code class="language-c"><span style="color:#999999">[</span>root@localhost <span style="color:#669900">~</span><span style="color:#999999">]</span># find <span style="color:#669900">/</span>boot<span style="color:#669900">/</span> <span style="color:#669900">-</span>size <span style="color:#669900">+</span><span style="color:#98c379">20</span>M -
<span style="color:#999999">[</span>root@localhost <span style="color:#669900">~</span><span style="color:#999999">]</span># find <span style="color:#669900">/</span>boot<span style="color:#669900">/</span> <span style="color:#669900">-</span>size <span style="color:#669900">-</span><span style="color:#98c379">10</span>M -
<span style="color:#999999">[</span>root@localhost <span style="color:#669900">~</span><span style="color:#999999">]</span># find <span style="color:#669900">/</span>boot<span style="color:#669900">/</span> <span style="color:#669900">-</span>size <span style="color:#669900">+</span><span style="color:#98c379">300</span>k -
</code></span>
-user 用户名 #按照数据的所有者
-
<span style="color:#000000"><code class="language-c"><span style="color:#999999">[</span>root@localhost <span style="color:#669900">~</span><span style="color:#999999">]</span># useradd wxr #新建用户 -
<span style="color:#999999">[</span>root@localhost <span style="color:#669900">~</span><span style="color:#999999">]</span># find <span style="color:#669900">/</span>home <span style="color:#669900">-</span>user zhangsan -
</code></span>
-mtime 修改时间 #都是过去时间
-
<span style="color:#000000"><code class="language-c">三个月之前的数据: -
<span style="color:#999999">[</span>root@localhost <span style="color:#669900">~</span><span style="color:#999999">]</span># find <span style="color:#669900">/</span>root <span style="color:#669900">-</span>mtime <span style="color:#669900">+</span><span style="color:#98c379">90</span> -
查找最近一天内: -
<span style="color:#999999">[</span>root@localhost <span style="color:#669900">~</span><span style="color:#999999">]</span># find <span style="color:#669900">/</span>root <span style="color:#669900">-</span>mtime <span style="color:#669900">-</span><span style="color:#98c379">1</span> -
</code></span>
三、find高级使用处理查找的内容
案例:查找并处理文件
1. 利用find查找所有用户 student 拥有的必须是文件,把它们拷贝到 /root/findfiles/ 文件夹中
-
<span style="color:#000000"><code class="language-c"><span style="color:#999999">[</span>root@localhost <span style="color:#669900">~</span><span style="color:#999999">]</span># useradd student -
<span style="color:#999999">[</span>root@localhost <span style="color:#669900">~</span><span style="color:#999999">]</span># mkdir <span style="color:#669900">/</span>root<span style="color:#669900">/</span>findfiles -
<span style="color:#999999">[</span>root@localhost <span style="color:#669900">~</span><span style="color:#999999">]</span># find <span style="color:#669900">/</span> <span style="color:#669900">-</span>user student <span style="color:#669900">-</span>type f -
<span style="color:#999999">[</span>root@localhost <span style="color:#669900">~</span><span style="color:#999999">]</span># find <span style="color:#669900">/</span> <span style="color:#669900">-</span>user student <span style="color:#669900">-</span>type f <span style="color:#669900">-</span>exec cp <span style="color:#999999">{</span><span style="color:#999999">}</span> <span style="color:#669900">/</span>root<span style="color:#669900">/</span>findfiles<span style="color:#669900">/</span> \<span style="color:#999999">;</span> -
<span style="color:#999999">[</span>root@localhost <span style="color:#669900">~</span><span style="color:#999999">]</span># ls <span style="color:#669900">-</span>A <span style="color:#669900">/</span>root<span style="color:#669900">/</span>findfiles<span style="color:#669900">/</span> -
</code></span>
• 操作方法:
find [范围] [条件] -exec 处理命令 {} ;
– -exec :额外操作开始
– {} :find查询的结果
– ; :额外操作结束
– 每找到一个符合条件的数据,直接传输给-exec,每次只传输一个参数
本文详细介绍Linux下find命令的使用方法及高级应用技巧。包括按文件类型、名称、大小、所有者及修改时间等条件查找文件,并展示如何结合-exec选项进行批量处理。适合系统管理员和Linux用户快速掌握find命令。
409

被折叠的 条评论
为什么被折叠?



