find searches the directory tree rooted at each given file name by evaluating  the given expression from left to right, according to the rules of precedence, until the outcome is known (the left hand side is false for and operations, true for or), at which point find moves on to the next file name.
The syntax of find command is:
 
find where-to-look criteria what-to-do
 
I have tried to explain the find command usage with all possible examples:
 
 
 
 
Part I – Find Files Based on their types
 
1. Find Files Using Name in Current Directory

Find all the files whose name is codeon.txt in a current working directory.

# find . -name codeon.txt

2. Find Files Under Home Directory
  
Find all the files under /home directory with name codeon .txt.

# find /home -name codeon.txt

 
3. Find Files Using Name and Ignoring Case

Find all the files whose name is codeon .txt and contains both capital and small letters in /home directory.

# find /home -iname codeon.txt

4. Find Directories Using Name

Find all directories whose name is Codeon in /directory.

# find / -type d -name Codeon

5. Find PHP Files Using Name

Find all php files whose name is codeon .php in a current working directory.

# find . -type f -name codeon.php

6. Find all PHP Files in Directory
 

# find . -type f -name "*.php"

 

Part II – Find Files Based on their Permissions

7.  Find all the files whose permissions are 777

 
# find . -type f -perm -0777
 
8. Find all the files without permission 777
 
# find / -type f   !  -perm -777
  
9. Find all the SGID bit set files whose permissions set to 644
 
 # find / -perm -2644
  
10. Find all the Sticky Bit set files whose permission are 551
 
# find / -perm -1551
  
11. Find all SUID set Files

# find / -perm -4000
  
12. Find all SGID set files

 
  # find / -perm -2000
  
13. Find all Sticky bit set files
  
  # find / -perm -1000

14. Find all Read Only files

# find / -perm /u=r
  
15. Find all Executable Files
 

   # find / -perm /a=x
  
16. Find all 777 permission files and use chmod command to set permissions to 644

# find / -type f -perm 0777 -print -exec chmod 644 {} \;
  
17. Find all 777 permission directories and use chmod command to set permissions to 755

# find / -type d -perm 777 -print -exec chmod 755 {}  \;
  
18. Find and remove single File

To find a single file called codeon .txt and remove it.

# find . -type f -name "codeon.txt" -exec rm -f {} \;
  
19. Find and remove Multiple File

To find and remove multiple files such as .mp3 or .txt, then use.

# find . -type f -name "*.txt" -exec rm -f {}  \;

OR

# find . -type f -name "*.mp3" -exec rm -f {}  \;
  
20. Find all Empty Files

To find all empty files under certain path.

# find /tmp -type f -empty
  
21. Find all Empty Directories

To find all empty directories under certain path.

# find /tmp -type d -empty
  
22. File all Hidden Files

To find all hidden files, use below command

# find /tmp -type f -name ".*"
  
Note: always put -name before ".*"
  

Part III - Search files based on owners and groups
23. Find Single File Based on User

To find all or single file called codeon .txt under /root directory of owner root.

# find / -user root -name codeon.txt
  
24. Find all Files Based on User

To find all files that belongs to user Codeon under /home directory.

# find /home -user codeon
  
25. Find all Files Based on Group

To find all files that belongs to group Developer under /home directory.

# find /home -group Developer
  
26. Find Particular Files of User

To find all .txt files of user codeon under /home directory.

# find /home -user codeon -iname "*.txt"
 

Part IV – Find Files and Directories Based on Date and Time
27. Find Last 50 Days Modified Files

To find all the files which are modified 50 days back.

# find / -mtime 50
  
28. Find Last 50 Days Accessed Files

To find all the files which are accessed 50 days back.

# find / -atime 50
  
29. Find Last 50-100 Days Modified Files

To find all the files which are modified more than 50 days back and less than 100 days.

# find / -mtime +50 –mtime -100
  
30. Find Changed Files in Last 1 Hour

To find all the files which are changed in last 1 hour.

# find / -cmin -60
  
31. Find Modified Files in Last 1 Hour

To find all the files which are modified in last 1 hour.

# find / -mmin -60
  
32. Find Accessed Files in Last 1 Hour

To find all the files which are accessed in last 1 hour.

# find / -amin -60
 

Part V - Find files and directories based on size

33. Find 50MB Files

To find all 50MB files, use

# find / -size 50M
  
34. Find Size between 50MB – 100MB

To find all the files which are greater than 50MB and less than 100MB.

# find / -size +50M -size -100M
  
35. Find and Delete 100MB Files

To find all 100MB files and delete them using one single command.

# find / -size +100M -exec rm -rf {}  \;
  
36. Find Specific Files and Delete

Find all .mp3 files with more than 10MB and delete them using one single command.

# find / -type f -name *.mp3 -size +10M -exec ls -l {}  \;

- See more at: http://www.coolcoder.in/2014/02/find-command-usage-in-linux-with.html#sthash.vnYfMYA6.dpuf

Find command usage in Linux with excellent examples--reference的更多相关文章

  1. Linux/Unix 指令使用说明的格式介绍(the Bash Command 'Usage' Syntax)

    Linux/Unix 指令使用说明的格式介绍(the Bash Command 'Usage' Syntax) 摘自    金马的Blog 原文  http://www.lijinma.com/blo ...

  2. 5 commands to check memory usage on Linux

    Memory Usage On linux, there are commands for almost everything, because the gui might not be always ...

  3. the usage of linux command "expect"

    #! /usr/bin/expect -f# this script is used to practise the command "expect" #when "li ...

  4. Regular Expressions in Grep Command with 10 Examples --reference

    Regular expressions are used to search and manipulate the text, based on the patterns. Most of the L ...

  5. linux systemctl service examples

    一.脚本服务化目的 1.python 在 文本处理中有着广泛的应用,为了满足文本数据的获取,会每天运行一些爬虫抓取数据.但是网上买的服务器会不定时进行维护,服务器会被重启.这样我们的爬虫服务就无法运行 ...

  6. Linux: 20 Iptables Examples For New SysAdmins

    Linux comes with a host based firewall called Netfilter. According to the official project site: net ...

  7. SHELL:Find Memory Usage In Linux (统计每个程序内存使用情况)

    转载一个shell统计linux系统中每个程序的内存使用情况,因为内存结构非常复杂,不一定100%精确,此shell可以在Ghub上下载. [root@db231 ~]# ./memstat.sh P ...

  8. what codes does sudo command do in Linux?

    sometime, to make your change of configuration file be effective to web application, we have to rest ...

  9. bash: telnet: command not found (Linux安装telnet)

    问题描述: centos 系统没有 telnet 命令 bash: telnet: command not found 1.安装telnet服务 (3个) yum install xinetd tel ...

随机推荐

  1. windows service使用log4net 记录日志

    最近写了个定时邮件推送的服务,当利用lognet4记录日志时,发现日志并没有记录.后来明白windows 服务一般默认是在C:\Windows\System 或是C:\Windows\System32 ...

  2. Vue 动态传值,Get传值

    Vue 路由get传值1.动态传值 1.1需要在路由配置时指定参数: {component:'/home/:id'} 1.2在routerlink中指定格式:<router-link :to=& ...

  3. loj#6437. 「PKUSC2018」PKUSC(计算几何)

    题面 传送门 题解 计算几何的东西我好像都已经忘光了-- 首先我们可以把原问题转化为另一个等价的问题:对于每一个敌人,我们以原点为圆心,画一个经过该点的圆,把这个圆在多边形内部的圆弧的度数加入答案.求 ...

  4. CPU 的工作原理

    内部架构 CPU 的根本任务就是执行指令,对计算机来说最终都是一串由 0 和 1 组成的序列.CPU 从逻辑上可以划分成 3 个模块,分别是控制单元.运算单元和存储单元 .其内部架构如下: [1]控制 ...

  5. win10在CMD操作MySQL时中文显示乱码

    根据网上说明直接修改数据库各种的字符集没有效果,后来经过测试发现需要先更换至旧版CMD才行. 具体总流程如下: 1.在边框栏上右键,打开属性栏. 2.选择“使用旧版控制台” 3.重启CMD,并设置字符 ...

  6. 【离散数学】 SDUT OJ 谁是作案嫌疑人?

    谁是作案嫌疑人? Time Limit: 1000 ms Memory Limit: 65536 KiB Submit Statistic Problem Description 刑侦大队对涉及六个嫌 ...

  7. XAF ORMDataModel构建的基础资料对象无法被调用显示的解决办法

    修正,其实只要在基础资料类中加入[XafDefaultProperty("名称")]标签即可. namespace NEO.ERP.Module.BusinessObjects.B ...

  8. Qt 学习之路 2(64):使用 QJsonDocument 处理 JSON

    Home / Qt 学习之路 2 / Qt 学习之路 2(64):使用 QJsonDocument 处理 JSON Qt 学习之路 2(64):使用 QJsonDocument 处理 JSON  豆子 ...

  9. Spring Eureka的使用入门--服务端与客户端

    接上篇: Eureka作为注册中心,连接服务端与客户端: 服务端: 依赖包: apply plugin: 'org.springframework.boot' apply plugin: 'io.sp ...

  10. C++_代码重用5-类模板

    如果两种类只是数据类型不同,而其他代码是相同的,与其编写新的类声明,不如编写一种泛型(独立于类型的)栈.然后将具体的类型作为参数传递给这个类.这样就可以使用通用的代码生成存储不同类型值的栈. 可以使用 ...