如何在 Linux 中查找文件

作者: Ellen Moore
创建日期: 17 一月 2021
更新日期: 29 六月 2024
Anonim
#013:How to find files in Linux
视频: #013:How to find files in Linux

内容

如果您不知道如何在 Linux 系统上查找文件,那将是相当困难的。最好使用在终端中输入的不同命令。掌握了这些命令后,您将完全控制文件;此外,这些命令比其他操作系统中的类似搜索引擎更实用。

脚步

方法 1(共 3 个):查找实用程序

  1. 1 按名称查找文件。 使用实用程序执行这种简单的搜索 寻找...下面的命令将在当前目录及其所有子目录中搜索文件。

    find -iname "文件名"

    • 进入 -我的名字 代替 -名称忽略输入文件名中的大小写。团队 -名称 区分大小写。
  2. 2 开始在根目录中搜索。 要开始系统范围的搜索,请将修饰符添加到查询中 /...在这种情况下,命令 寻找 将在从根目录开始的所有目录中搜索该文件。

    find / -iname "文件名"

    • 您可以在特定目录中开始搜索;要做到这一点,更换 / 到目录路径,例如 / 家 / 最大.
    • 可以使用 . 代替 /仅在当前目录及其子目录中搜索文件。
  3. 3 使用泛化符号。*查找名称与请求部分匹配的文件。使用泛化符号 * 您可以查找全名未知的文件,也可以查找具有特定扩展名的所有文件。

    find /home/max -iname "*.conf"

    • 此命令将在 Max 用户文件夹(及其子文件夹)中查找所有扩展名为 .conf 的文件。
    • 使用此命令查找与查询的一部分匹配的所有文件。例如,如果您的计算机上有很多与 WikiHow 相关的文件,请输入以下命令查找所有文件 “*维基*”.
  4. 4 更轻松地管理搜索结果。 如果搜索结果过多,则很难找到您要查找的文件。使用符号 |用 less 过滤搜索结果。这样可以更轻松地查看和过滤搜索结果。

    find /home/max -iname "*.conf" |较少的

  5. 5 查找特定项目。 使用修饰符在搜索结果中仅显示特定项目。您可以搜索常规文件 (F), 目录 (d), 符号链接 ()、字符 I/O 设备 () 和块设备 ().

    find / -type f -iname "文件名"

  6. 6 按文件大小过滤搜索结果。 如果您的计算机上有许多名称相似的文件,但您知道要查找的文件的大小,请按文件大小过滤搜索结果。

    find / -size + 50M -iname "文件名"

    • 此命令将查找所有大于 50 MB 的文件。使用修饰符 + 要么 -表示大小的增加或减少。如果修饰符 + 要么 - 不,该命令将查找与指定大小完全相同的文件。
    • 搜索结果可以按字节过滤(C), 千字节 (), 兆字节 (), 千兆字节 (G) 或 512 字节的块 ()。请注意,显示的修饰符区分大小写。
  7. 7 使用逻辑运算符(布尔运算符)组合搜索过滤器。 可以使用运算符 -和, -要么, -不是将不同的搜索词组合成一个查询。

    find / travelphotos -type f -size + 200k -not -iname " * 2015 *"

    • 此命令将在“Travelphotos”文件夹中查找大于 200 KB 且名称中没有数字 2015 的文件。
  8. 8 按所有者或权限查找文件。 如果您需要查找特定用户拥有的文件或具有特定访问权限的文件,您可以缩小搜索范围。

    find / -user max -iname "filename" find / -group users -iname "filename" find / -perm 777 -iname "filename"

    • 上述命令将查找特定用户、组或具有特定访问权限的文件。您还可以在查询中省略文件名以查找与指定条件匹配的所有文件。例如,命令 查找 / -烫发 777 将查找权限为 777(无限制)的所有文件。
  9. 9 文件搜索完成后,组合命令以执行特定操作。 团队 寻找 可以与将处理找到的文件的其他命令结合使用。为此,团队之间 寻找 并使用第二个命令输入 -exec并在行尾输入 {} ;

    寻找。 -type f -perm 777 -exec chmod 755 {} ;

    • 该命令将在当前目录(及其子目录)中查找所有权限为 777 的文件,然后使用该命令 修改 访问权限将更改为 755。

方法 2 of 3:定位实用程序

  1. 1 安装实用程序。定位...此实用程序比实用程序更快 寻找因为它并没有真正扫描文件系统。但是,并非所有 Linux 发行版都附带该实用程序。 定位所以输入以下命令来安装它:
    • 进入 sudo apt-get 更新 并按下 ↵ 输入.
    • 在 Debian 和 Ubuntu 上,执行以下操作:输入 sudo apt-get install mlocate 并按下 ↵ 输入...如果 定位 已经安装,显示一条消息 mlocate 已经是最新版本了 (已安装最新版本)。
    • 在 Arch Linux 上,使用 pacman 包管理器: pacman -Syu mlocate
    • 在 Gentoo 上,使用emerge: 出现移动定位
  2. 2 更新实用程序数据库。定位...如果没有先前创建和更新的数据库(存储文件系统快照的外观),此实用程序将无法找到任何内容。数据库每天以自动模式更新,但也可以手动完成。手动更新数据库以立即开始使用 定位.
    • 进入 须藤更新 并按下 ↵ 输入.
  3. 3 采用。定位执行简单的搜索。公用事业 定位 工作很快,但功能不如实用程序 寻找...团队 定位 处理与命令类似的简单搜索查询 寻找.

    定位 -i " *.webp"

    • 此命令将查找(在整个系统中)具有扩展名的所有文件 .webp...这里的泛化符号 * 和团队一样工作 寻找.
    • 喜欢团队 寻找, 修饰符 -一世 忽略搜索词的大小写。
  4. .
  5. 4 限制搜索结果的数量。 如果搜索结果过多,请使用修饰符缩短它们 -n 以及确定显示的搜索结果数量的数字。

    定位 -n 20 -i " *.webp"

    • 此命令将显示与您的搜索词匹配的前 20 个结果。
    • 您也可以使用符号 |用 less 过滤搜索结果。这样可以更容易地查看搜索结果。

方法 3 of 3:在文件中查找文本

  1. 1 使用命令。格雷普搜索文件中的文本。这样做可以查找包含特定短语或行的文件。基本命令格式 格雷普 如下:

    grep -r -i "搜索查询" / path / to / directory /

    • 修饰符 -r 使搜索递归,因此将在当前目录(和所有子目录)中找到包含搜索词字符串的任何文件。
    • 修饰符 -一世 表示请求不区分大小写。要区分大小写,请勿输入修饰符 -一世.
  2. 2 隐藏多余的文字。 执行命令时 格雷普 (如上所述)在搜索查询中指定的带有突出显示的短语或字符串的文件名和文本将显示在屏幕上。您可以隐藏此类文本以仅显示文件名和路径。为此,请输入以下命令:

    grep -r -i "搜索查询" / path / to / directory / |切-d:-f1

  3. 3 隐藏错误消息。 团队 格雷普 如果它试图在没有适当权限的情况下访问文件夹或以空文件夹结束,则会显示一条错误消息。此类消息可以发送到 /dev/null 以便它们不会出现在屏幕上。

    grep -r -i "搜索查询"/path/to/directory/2>/dev/null