我们都知道在Linux中有着上千条的命令,而常用命令不过百条。

  我们也知道在Linux里面“一切皆文件”,那么如何能够快速的找到你想要找的东西就显得尤为重要。

  find是Linux里面最重要的命令之一,它有着强大的查询功能。它是在不指定查找目录的情况下是对整个系统进行遍历查找,并执行指定操作。find是直接搜索硬盘,所以在遍历一个大的文件系统是就可能会消耗大量的时间,它类似于Windows下的搜索。

1. find的使用格式: find [PATHNAME][option][action]

  我们知道 PATHNAME 是 find命令查找的路径。例如 . 代表当前目录, / 代表根目录,当然我们也可以指定路径如 /tmp

——>a.按类型查找

  

  看一下执行结果:

  查找文件:

  

  查找目录:

  

——>b.按名字查找

  如果查找出来的文件太多,不好显示怎么办?Linux也为我们提供了可改的输出模式。例如:

  -print :将查找到的匹配的文件输出到标准输出

    find /home -type f -print

  -exec :将查找到的文件进行额外的动作

    find /home/qiao/桌面 -name “1.txt” -exec rm {} \;            ——> 意思即为找到1.txt之后删除它

• {}代表的是find做找到的内容,即find的结果会被放到{}的位置中;

  • -exec 到 \; 是关键字代表find额外动作的开始(-exec)到(\;)结束,这中间的就是find指令内的额外动作,在上面例子中就是【 rm {} 】;

  • \ 为转义字符

  find还有好多其他的参数,总结如下:

   -name 按照⽂件名查找⽂件。 

  -perm 按照⽂件权限来查找⽂件。 

  -prune 使⽤这⼀选项可以使find命令不在当前指定的目录中查找,如果同时使⽤-depth选项,那么-prune将被find命令忽略。 

  -user 按照⽂件属主来查找⽂件。 

   -group 按照⽂件所属的组来查找⽂件。 

   -mtime -n +n 按照⽂件的更改时间来查找⽂件, - n表⽰⽂件更改时间距现在n天以内, + n表⽰⽂件更改时间距现在n天以前。

ps:find命令还有-atime和-ctime 选项,但它们都和-m time选项相同。 

  -nogroup 查找⽆有效所属组的⽂件,即该⽂件所属的组在/etc/groups中不存在。 

  -nouser 查找⽆有效属主的⽂件,即该⽂件的属主在/etc/passwd中不存在。

  -newer file1 ! file2 查找更改时间⽐⽂件file1新但⽐⽂件file2旧的⽂件。 

  -type 查找某⼀类型的⽂件,例如: 

    b - 块设备⽂件。 

    d - 目录。 

    c - 字符设备⽂件。 

    p - 管道⽂件。 

    l - 符号链接⽂件。 

    f - 普通⽂件。 

  -size n: [c] 查找⽂件⻓度为n块的⽂件,带有c时表⽰⽂件⻓度以字节计。
  -depth:在查找⽂件时,⾸先查找当前目录中的⽂件,然后再在其⼦目录中查找。 

  -fstype:查找位于某⼀类型⽂件系统中的⽂件,这些⽂件系统类型通常可以在配置⽂件/etc/fstab中找到,该配置⽂件中包含了本系统中有关⽂件系统的信息。 

  -mount:在查找⽂件时不跨越⽂件系统mount点。 

  -follow:如果find命令遇到符号链接⽂件,就跟踪⾄链接所指向的⽂件。 

  -cpio:对匹配的⽂件使⽤cpio命令,将这些⽂件备份到磁带设备。

Linux常用命令之 查找命令 find(一)的更多相关文章

  1. linux type 命令和Linux的五个查找命令

    type命令用来显示指定命令的类型.一个命令的类型可以是如下之一 alias 别名 keyword 关键字,Shell保留字 function 函数,Shell函数 builtin 内建命令,Shel ...

  2. Linux的五个查找命令find,locate,whereis,which,type

    Linux的五个查找命令 1. find 最常见且最强大的命令,可以查找任何文件. 格式 $ find   指定目录   指定条件   指定动作   指定目录: 所要搜索的目录及其子目录,默认当前目录 ...

  3. linux中5条查找命令

    1 which which命令的作用是,在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果. which [文件...] 参 数: -n<文件名长度> 指定文件名长 ...

  4. Linux下的搜索查找命令的详解(find)

    4.find Linux下find命令在目录结构中搜索文件,并执行指定的操作.Linux下find命令提供了相当多的查找条件,功能很强大.由于find具有强大的功能,所以它的选项也很多,其中大部分选项 ...

  5. Linux下强大的查找命令find 用法和常见用例

    Linux系统下find是较为常用的指令,find命令在目录结构中搜索文件,并执行指定的操作,掌握它的形式与用法对我们很有用处. 因为Linux下面一切皆文件,经常需要搜索某些文件来编写,所以对于Li ...

  6. Linux常用的50个命令

    50个最常用的Unix/Linux命令 2014-08-20 这篇文章翻译自http://www.thegeekstuff.com/2010/11/50-linux-commands/这些都是一些很常 ...

  7. Linux下的文件查找命令——find

    Linux下几个常见的文件查找命令: which       查看可执行文件的位置 whereis    寻找特定文件,查看文件的位置 locate       配合数据库查看文件位置 find    ...

  8. Linux常用的18个命令(复习)

    1. cd命令 它用于切换当前目录,它的参数是要切换到的目录的路径,可以是绝对路径,也可以是相对路径.如: cd /root/Docements # 切换到目录/root/Docements cd . ...

  9. Linux的五个查找命令

    1. find find是最常见和最强大的查找命令,你可以用它找到任何你想找的文件. find的使用格式如下: $ find <指定目录> <指定条件> <指定动作> ...

随机推荐

  1. Eclipse+maven发布ee项目jar包未发布

    背景:在Eclipse中搭建好EE环境后,发布时,出现ClassNotFoundException: XX.XX.ConfigureListener,查看时,对应的jar包都引入了,项目没也没出错,但 ...

  2. 002_系统表查询(sysdatabases等)

    002_系统表查询(sysdatabases等) --1.获取所有数据库名: SELECT Name FROM Master..SysDatabases ORDER BY Name --2.获取所有表 ...

  3. Qt 数据库创建表失败原因之数据库关键字

    本人数据库新手,在创建表时出现问题,最后经查证,找出问题所在.下面的程序是部分节选,在创建数据库表的时候,起先使用的L24的CreateDB,经测试,一直输出 Create testResult Fa ...

  4. Struts2+Spring4+Hibernate4整合超详细教程

    Struts2.Spring4.Hibernate4整合 超详细教程 Struts2.Spring4.Hibernate4整合实例-下载 项目目的: 整合使用最新版本的三大框架(即Struts2.Sp ...

  5. Debian/Ubuntu手动编译安装MongoDB C++11驱动及驱动测试

    本文章仅限cnblogs网站内转载!请某网站自觉,遵纪守法,尊重原创! 系统环境情况: 最小化.无桌面环境 新安装的Debian 8 Server 版本操作系统虚拟机一台 手动编译安装MongoDB ...

  6. map(int, ..) 与 int() 的区别

    >>> map(int,') [0] >>> int('-1') -1 >>> map(int, l[1]) Traceback (most re ...

  7. Google Noto Sans CJK 字体

    下载链接:https://code.google.com/p/noto/source/browse/third_party/noto_cjk 等自己安装完成,再来个体验说明.

  8. DbUtility-查询DataTable

    直接上源码 using System; using System.Data; using System.Threading.Tasks; using DbUtility; namespace Test ...

  9. Cracking the coding interview--Q1.7

    原文 Write an algorithm such that if an element in an MxN matrix is 0, its entire row and column are s ...

  10. ExpandableListView(可展开的列表组件)的说明以及其用法

    ExpandableListView的用法和ListView非常像,只是其所显示的列表项应该由ExpandableListAdapter提供,下面是它的xml属性及说明: 然而,接下来是用事实说话了: ...