---
author: RoseHosting
category: 技术
comments_data:
- date: '2016-12-06 14:01:59'
  message: 但是作者应该把find命令讲的更详细些，很多人都不愿意看一大堆英文的man page的
  postip: 117.152.70.58
  username: 来自117.152.70.58的 Chrome 54.0|Windows 10 用户
- date: '2016-12-06 14:36:57'
  message: 这只是个引子，我们其实陆续介绍过很多次，各种深度的。
  postip: 123.120.78.25
  username: linux [Chrome 54.0|Mac 10.11]
- date: '2016-12-06 16:04:58'
  message: locate 第一次用，速度确实很快！
  postip: 1.80.218.181
  username: 来自陕西西安的 Chrome 54.0|Windows 7 用户
- date: '2016-12-07 09:48:46'
  message: 稍微简略了点，希望可以更加地详尽。
  postip: 219.128.232.124
  username: TANG^JJ^ [Firefox 50.0|Ubuntu]
- date: '2016-12-07 14:39:18'
  message: "关于&nbsp; &nbsp; # find -name test.file<br />\r\n<br />\r\n命令会搜索整个目录树来查找名为
    test.file 的文件，并且会提供其存放位置。你可以使用你 Linux 上一个存在的文件名来尝试一下<br />\r\n<br />\r\nIf&nbsp;&nbsp;no
    paths are given, the current directory is used. （参考man手册） 应该是当前的目录树"
  postip: 134.134.139.83
  username: jun413947139 [Firefox 50.0|Windows 10]
- date: '2016-12-07 18:11:11'
  message: 谢谢，你说的对，这点是没有描述清楚。
  postip: 118.79.126.98
  username: linux [Chrome 54.0|Mac 10.11]
- date: '2016-12-11 20:47:37'
  message: "find 命令 -name “文件名”<br />\r\n&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;
    &nbsp;&nbsp; &nbsp; -type&nbsp; &nbsp; 文件类型<br />\r\n&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;
    &nbsp;&nbsp; &nbsp;&nbsp; &nbsp; ！&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;取反<br
    />\r\n<br />\r\n例如：&nbsp;&nbsp;find&nbsp;&nbsp;/data/ -type d ！ -name &quot;abc&quot;<br
    />\r\n#查找出/data目录下不包含abc的目录<br />\r\n<br />\r\n<br />\r\n希望对大家有用"
  postip: 144.52.21.40
  username: mdjbf [Microsoft Edge 14.14393|Windows 10]
- date: '2016-12-12 23:06:32'
  message: 记得有的同事find之前也updatedb一下，好奇怪啊！
  postip: 111.161.162.227
  username: 来自天津的 Mobile Safari|iOS 10.1 用户
- date: '2016-12-13 23:25:54'
  message: 哈哈，这就是不求甚解的结果。
  postip: 123.120.85.250
  username: linux [Chrome 54.0|Mac 10.11]
count:
  commentnum: 9
  favtimes: 6
  likes: 0
  sharetimes: 0
  viewnum: 23158
date: '2016-12-06 13:46:00'
editorchoice: false
excerpt: 对于新手而言，在 Linux 中使用命令行可能会非常不方便。没有图形界面，很难在不同文件夹间浏览，找到需要的文件。本篇教程中，我会展示如何在 Linux
  中查找特定的文件。
fromurl: https://www.rosehosting.com/blog/linux-find-file/
id: 8016
islctt: true
largepic: /images/p/201612/06/115513ee3se45f5es8z93e.jpg
permalink: /article-8016-1.html
pic: /images/p/201612/06/115513ee3se45f5es8z93e.jpg.thumb.jpg
related: []
reviewer: ''
selector: ''
summary: 对于新手而言，在 Linux 中使用命令行可能会非常不方便。没有图形界面，很难在不同文件夹间浏览，找到需要的文件。本篇教程中，我会展示如何在 Linux
  中查找特定的文件。
tags:
- 查找
- 文件
thumb: false
title: 如何在 Linux 中查找一个文件
titlepic: true
translator: geekpi
updated: '2016-12-06 13:46:00'
---

![](/images/p/201612/06/115513ee3se45f5es8z93e.jpg)


对于新手而言，在 Linux 中使用命令行可能会非常不方便。没有图形界面，很难在不同文件夹间浏览，找到需要的文件。本篇教程中，我会展示如何在 Linux 中查找特定的文件。


第一步要做的是**[通过 SSH 连接到你的 Linux](https://www.rosehosting.com/blog/connect-to-your-linux-vps-via-ssh/)**。在 Linux 中查找文件有两种方法。一种是使用 `find` 命令，另外一种是使用 `locate` 命令。我们先看第一种。


### find 命令


使用 **Linux find 命令**可以用不同的搜索标准如名字、类型、所属人、大小等来搜索目录树。基本语法如下：



```
# find path expression search-term

```

下面是使用 find 命令根据文件名来查找特定文件的一个例子：



```
# find -name test.file

```

命令会搜索整个目录树来查找名为 `test.file` 的文件，并且会提供其存放位置。你可以使用你 Linux 上一个存在的文件名来尝试一下。


find 命令有时会花费几分钟来查找整个目录树，尤其是如果系统中有很多文件和目录的话。要显著减少时间，你可以指定搜索的目录。比如，如果你知道 `/var` 中存在 `test.file`，那就没有必要搜索其它目录。这样，你可以使用下面的命令：



```
# find /var -name test.file

```

find 还可以根据时间、大小、所属人、权限等选项搜索文件。要了解更多关于这些选项的信息，你可以使用查看\*\* Linux find 命令\*\*的手册。



```
# man find

```

### locate 命令


要在Linux中使用`locate`命令，首先需要安装它。


如果你正在使用 Ubuntu，运行下面的命令来安装 locate：



```
# apt-get update
# apt-get install mlocate

```

如果你使用的是 CentOS ，运行下面的命令来安装 locate：



```
# yum install mlocate

```

locate 是一种比 find 更快的方式，因为它在数据库中查找文件。要更新搜索数据库，运行下面的命令：



```
# updatedb

```

使用 locate 查找文件的语法：



```
# locate test.file

```

就像 find 命令一样，locate 也有很多选项来过滤输出。要了解更多你可以查看**Linux Locate 命令**的手册。



```
# man locate

```

如果你喜欢这篇文件，请使用左边的按钮分享到社交网络上，或者在下面留言，谢谢。




---


via: <https://www.rosehosting.com/blog/linux-find-file/>


作者：[RoseHosting](https://www.rosehosting.com/blog/linux-find-file/) 译者：[geekpi](https://github.com/geekpi) 校对：[jasminepeng](https://github.com/jasminepeng)


本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译，[Linux中国](https://linux.cn/) 荣誉推出