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 等 ...
随机推荐
- mybatis传入map任意表增删改查,分页过滤字段
<!--根据实体参数查询 --> <select id="selectBaseList" resultType="java.util.HashMap&q ...
- 分布式消息通信之RabbitMQ_Note
目录 1. RabbitMQ 安装 2. RabbitMQ 应用场景,特性 3. 官网入门指引 4. RabbitMQ 工作模型 5. RabbitMQ 主要的几种交换机类型 6. Java API的 ...
- 高级UI-RecyclerView简单使用
RecyclerView从Android 5.0开始引入,用以替代ListView.GridView控件,RecyclerView的存在,使得控件的耦合度更低,在ListView中需要使用ViewHo ...
- centos(6,7) 系统常用命令
目录: 系统服务命令 文件操作 系统信息 文件和目录 文件搜索 挂载一个文件系统 磁盘空间 用户和群组 文件的权限 压缩与解压缩 YUM丶RPM 包 查看文件内容 文本处理 文件系统分析 初始化一个文 ...
- 创建SSH密钥
Step1: 检查SSH密钥 首先,打开终端,输入以下指令,查看是否已经生成SSH密钥. cd ~/.ssh ls # Lists the files in your .ssh directory 在 ...
- [转帖]Keccak简介
Keccak简介 https://blog.csdn.net/chengqiuming/article/details/82819769 2018年09月23日 08:04:40 cakincqm 阅 ...
- Vue起飞前的准备
Vue起飞前的准备 一.什么是ECMAScript,以及es6的诞生? 1997年 ECMAScript 1.0 诞生 1999年12月 ECMAScript 3.0诞生,它 是一个巨大的成功,在业界 ...
- Django Simple Captcha的使用
Django Simple Captcha的使用 1.下载Django Simple Captcha django-simple-captcha官方文档地址 http://django-simple- ...
- WUSTOJ 1291: 2n皇后问题(Java)
题目:
- ASP.NET Core启动流程
1. 引言 对于ASP.NET Core应用程序来说,我们要记住非常重要的一点是:其本质上是一个独立的控制台应用,它并不是必需在IIS内部托管且并不需要IIS来启动运行(而这正是ASP.NET Cor ...