Linux教程 Find命令的使用
Linux中的Find(查找)命令是在Linux系统中最重要并且更有用的命令之一。Find命令主要用于指定匹配文件条件的参数查找或者定位文件和目录的列表。Find命令能够被使用基于各种各样的条件,例如permissions(权限),users(用户),groups(组),file type(文件类型),date(日期),size(大小)等等其它可能的条件。
在这篇文章我们主要分享常用的35个Find命令以及通过例子来讲解每一个的用法,这里的35个例子我们分为5大块来讲解。
- 第一部分: 基本的Find命令查找通过名字
- 第二部分: 查找文件通过权限
- 第三部分: 查找文件通过拥有者以及组
- 第四部分: 查找文件通过日期和时间
- 第五部分: 查找文件通过文件的大小
第一部分:通过文件名来查找文件
1,查找文件在最近的工作目录通过文件名
查找最近工作目录下名为test.txt的所有文件。
# find . -name test.txt
./tmp/test.txt
./test.txt
2,通过文件名查找文件在home工作目录
查找home目录下名为test.txt的所有文件。
# find /home/ -name test.txt
/home/test.txt
3,通过忽略文件名的大小写来查找文件在home工作目录
查找home工作目录下名为test.txt并且不分大小写的所有文件。
# find /home -iname test.txt
/home/test.txt
/home/Test.txt
/home/tesT.txt
4,查找目录使用文件名
查找在根目录/下名为test的所有文件名。
# find / -type d -name test
/test
5,使用Php文件名后缀来查找对应格式文件
查找最近工作目录下名为test.php的所有文件。
# find . -type f -name tecmint.php
/test.php
6,在最近工作目录查找所有Php文件
查找最近工作目录下所有Php后缀的文件。
# find . -type f -name "*.php"
./test.php
./login.php
./index.php
第二部分:通过权限查找文件
7,查找拥有777权限的所有文件
查找最近工作目录下有777权限的所有文件。
# find . -type f -perm 0777 -print
./test.txt
8,查找没有777权限的所有文件
查找根目录下没有777权限的所有文件。
# find / -type f ! -perm 777
9,查找有644权限的SGID文件
查找根目录下有644权限的SGID字节文件。
# find / -perm 2644
10,查找权限为551粘值位字节文件
查找根目录下权限为551粘值位字节文件。
# find / -perm 1551
11,查找根目录下SUID集合文件
查找根目录下SUID集合文件。
# find / -perm /u=s
12,查找根目录下SGID集合文件
查找根目录下SGID集合文件。
# find / -perm /g=s
13,查找只读文件
查找根目录下所有只读文件。
# find / -perm /u=r
14,查找可执行文件
查找根目录下所有可执行文件。
# find / -perm /a=x
15,查找所有777权限的文件并设置权限为644
查找根目录下权限为777的所有文件并通过chmod 修改权限为644。
# find / -type f -perm 0777 -print -exec chmod 644 {} \;
16,查找所有777权限的目录并设置权限为755
查找根目录下权限为777的所有目录并通过chmod 修改权限为755。
# find / -type d -perm 777 -print -exec chmod 755 {} \;
/test.php
17,查到并删除单个对应的文件
查找最近工作目录下名为test.php文件并删除。
# find . -type f -name "test.php" -exec rm -f {} \;
18,查找对应格式的多个文件并删除
查找最近工作目录下后缀为.mp3或者.txt的所有文件并删除。
# find . -type f -name "*.txt" -exec rm -f {} \;
OR
# find . -type f -name "*.mp3" -exec rm -f {} \;
19,查找/tmp目录下的所有空文件
查找/tmp目录下的所有空文件。
# find /tmp -type f -empty
/test.php
20,查找/tmp目录下的所有空目录
查找/tmp目录下的所有空目录。
# find /tmp -type d -empty
21,查找/tmp目录下的所有隐藏文件
查找/tmp目录下的所有隐藏文件
# find /tmp -type f -name ".*"
第三部分:通过用户拥有着以及拥有组查找文件
22,通过拥有者查找单个文件
查找根目录下名为test.txt的文件并且拥有着为user。
# find / -user root -name test.txt
23,在home目录下查找对应拥有者的所有文件
在home目录下查找对应拥有者root的所有文件。
# find /home -user root
24,在home目录下查找对应组的所有文件
在home目录下查找对应组developer的所有文件。
# find /home -group developer
25,查找后缀为txt的并且拥有者用户属于root的所有文件
查找后缀为txt的并且拥有者用户属于root的所有文件。
# find /home -user root -iname "*.txt"
第四部分:通过文件修改的时间和日期来查找文件
26,查找根目录下最后50天修改的文件
查找根目录下最后50天修改的文件。
# find / -mtime 50
27,查找根目录下最后50天访问的文件
查找根目录下最后50天访问的文件
# # find / -atime 50
28,查找根目录下最后50天到100天修改的文件
查找根目录下最后50天到100天修改的文件。
# find / -mtime +50 –mtime -100
29,查找在过去一小时改变的文件
查找在过去一小时改变的文件。
# find / -cmin -60
30,查找在过去一小时修改的文件
查找在过去一小时修改的文件。
# find / -mmin -60
31,,查找在过去一小时访问的文件
查找在过去一小时访问的文件。
# find / -amin -60
第五部分:通过文件大小来查找文件
32,查找根目录下大小为50M的文件
查找根目录下大小为50M的文件。
# find / -size 50M
33,查找根目录下大小为50M到100M之间的文件
查找根目录下大小为50M到100M之间的文件。
# find / -size +50M -size -100M
34,查找根目录下大小超过100M的文件删除
查找根目录下大小为100M的文件删除。
# find / -size +100M -exec rm -rf {} \;
35,查找根目录下格式为MP3并且大小超过10M的文件并删除
查找根目录下格式为MP3并且大小超过10M的文件并删除。
# find / -type f -name *.mp3 -size +10M -exec rm {} \;
Linux教程 Find命令的使用的更多相关文章
- Linux教程--基础命令
本教程适用于已经有Linux基础的同学们来一起学习哦!(环境:实验楼(https://www.shiyanlou.com/)) 有趣的Linux命令:Banner 一.安装 sudo apt-get ...
- Linux教程 Yum命令的使用
在这篇文章中,我们将学习如何安装,更新,删除,查找安装包,管理安装包以及安装包的仓库在Linux系统使用RedHat开发的YUM(Yellowdog Updater Modified)工具.以下这些命 ...
- Linux教程 网络管理命令Netstat的使用
Netstat(network statistics) 网络统计命令是一个命令行工具,用于监视网络出入的连接,路由表以接口统计等.Netstat 在所有的Unix或者Linux系统,Windows系统 ...
- Mac OSX系统、Linux、Windows命令行教程
目录 Mac OSX系统.Linux.Windows命令行教程 一.各系统终端的使用方法 二.各系统命令的功能 Mac OSX系统.Linux.Windows命令行教程 用你的终端做一些事情 (com ...
- linux教程及常用命令手册
Linux 教程 Linux 教程.Linux 简介.Linux 安装.Linux 系统启动过程.Linux 系统目录结构.Linux 忘记密码解决方法.Linux 远程登录.Linux 文件基本属性 ...
- 键盘侠Linux教程(四)| 常用命令
前言 Linux命令并不可怕,只要熟悉日常的操作命令即可,其他不熟悉的命令,需要用到的时候可以查阅资料,熟能生巧. Linux常用操作命令 命令的基本格式 命令的提示符 [root@localhost ...
- Linux 命令详解(七)Systemd 入门教程:命令篇
Systemd 入门教程:命令篇http://www.ruanyifeng.com/blog/2016/03/systemd-tutorial-commands.html
- Linux 基础教程 29-tcpdump命令-1
什么是tcpdump 在Linux中输入命令man tcpdump给出的定义如下所示: tcpdump - 转储网络上的数据流 是不是感觉很懵?我们用通俗.形象.学术的表达方式来全方位描述tc ...
- Linux培训教程 linux中nl命令使用介绍
nl命令在linux系统中用来计算文件中行号.nl 可以将输出的文件内容自动的加上行号!其默认的结果与 cat -n 有点不太一样, nl 可以将行号做比较多的显示设计,包括位数与是否自动补齐 0 等 ...
随机推荐
- 【C# 开发技巧】 C#中WinForm程序退出方法技巧总结
C#中WinForm程序退出方法技巧总结 一.关闭窗体 在c#中退出WinForm程序包括有很多方法,如:this.Close(); Application.Exit();Application.Ex ...
- pip3快速下载paddle
安装百度的paddle paddle时很慢,后来采用国内的源,速度嗖嗖滴 pip3 install -U paddlepaddle -i https://pypi.douban.com/simple/ ...
- Direct2D 学习笔记(3)图层 Layer
利用图层Layer绘制资源网址:https://docs.microsoft.com/zh-cn/windows/win32/direct2d/direct2d-layers-overview 1 ...
- 查询 ip占用导致ip不通的 问题 查IP对应的mac地址
IP冲突, 同一个IP配到了多余1台的机器上 ,导致IP 不通的情况,此时需要查询 都有哪台机器配置了这个IP,用 arping 命令, 具体命令 类似于 ping ,直接 arping + 目标地 ...
- leetcode1130 Minimum Cost Tree From Leaf Values
思路: 区间dp. 实现: class Solution { public: int mctFromLeafValues(vector<int>& arr) { int n = a ...
- javascript判断碰撞检测
javascript判断碰撞检测 点与矩形的碰撞检测 <pre> /** * * @param x1 点 * @param y1 点 * @param x2 矩形view x * @par ...
- uniapp跨域两次请求解决方案
引入qs模块 使用 qs模块将data序列化,再传递,注意header必须设置为 'content-type':'application/x-www-form-urlencoded', import ...
- 2、1 昨天讲列表缓存,为了让列表更新,我们需要在增、删、改方法之前加 @CacheEvict(value="list",allEntries = true)
package com.bw.service; import java.util.List; import javax.annotation.Resource; import org.springfr ...
- Mac配置虚拟环境Virtualenv,安装Python科学计算包详解
参考: https://www.jianshu.com/p/51140800e8b4 安装 virtualenvwrapper Virtaulenvwrapper是virtualenv的扩展包,可以更 ...
- [转帖]可能是东半球最好的 Curl 学习指南,强烈建议收藏!
可能是东半球最好的 Curl 学习指南,强烈建议收藏! http://www.itpub.net/2019/09/30/3302/ 记得转帖过.. 简介 curl 是常用的命令行工具,用来请求 Web ...