在 Debian 12 中轻松查找文件和目录的两个命令在 Debian 12 中轻松查找文件和目录的两个命令在 Debian 12 中轻松查找文件和目录的两个命令在 Debian 12 中轻松查找文件和目录的两个命令
  • 文章
  • 正则表达式
    • 工具
  • 登录
找到的结果: {phrase} (显示: {results_count} 共: {results_count_total})
显示: {results_count} 共: {results_count_total}

加载更多搜索结果...

搜索范围
模糊匹配
搜索标题
搜索内容
发表 admin at 2025年2月28日
类别
  • 未分类
标签

在 Debian 12 中轻松查找文件和目录的两个命令

基本上,Linux 中的一切都是文件。但在能够编辑文件之前,您必须能够在系统中找到它。

关于Linux文件搜索

在本文中,我将通过实际示例详细介绍两个使用终端搜索文件的命令。这两个命令是查找命令和定位命令。这两个命令之间的区别在于 find 执行实时搜索,locate 使用索引数据库进行搜索。这意味着locate命令通常更快,但它假设正在搜索的文件位于其索引数据库中,并且该数据库通常是在晚上创建的,因此locate命令找不到较新的文件。我在我的环境中使用 Debian 12。但其他 Linux 发行版上的命令应该是相同的。

如果您想按内容而不是文件名搜索文件,请查看 grep 命令。

使用 find 命令搜索文件和目录

在当前目录中搜索文件

如果您想使用 find 命令查找文件,请在终端上执行以下命令之一。

find <filname>

认为,

find test.txt

这将搜索您正在处理的当前目录中的文件。

在另一个目录中搜索文件

现在,如果您想在特定目录中找到该文件。完整的命令应该是这样的,

find <path of directory/filename>

假设您要在文档中搜索名为“test.txt”的文件,完整的命令应如下所示。

find Documents/test.txt

按文件扩展名查找文件

现在,如果您想查找当前或特定目录中的所有文本文件,相应的命令应如下所示。

find *.txt
find <path of directory/*.txt>

假设您要搜索 Documents/Karim 路径下的所有文本文件,完整的命令应如下所示。

find Documents/Karim/*.txt

按名称查找文件

或者,当您想按名称搜索文件时,可以使用 -name 开关。

find <path> -name <name of file you want to search>

假设您要在 Documents/Karim 中搜索名为 test1.txt 的文件。完整的命令应该如下所示。

find Documents/Karim -name test1.txt

如果您想搜索当前正在处理的目录中的特定文件。放 。位于示例所示的路径中。

find . -name test1.txt

搜索文件时忽略大小写

如果要搜索文件并忽略大小写,请使用 -iname 开关。完整的命令应如下所示。

find . -iname test.txt

按文件类型查找文件,例如符号链接

要搜索特定文件类型,请使用 -type 选项。完整的命令应如下所示。

find <path> -type <c>
  • c 表示文件类型,它们如下。
  • b 块(缓冲)特殊
  • c 字符(无缓冲)特殊
  • d 目录
  • p 命名管道
  • f 常规文件
  • l 符号链接
  • D 门 (Solaris)

假设您要搜索 Documents/Karim 中的常规文件,请执行以下命令。

find Documents/Karim -type f

如果您想在当前目录中搜索常规文件。完整的命令应如下所示。

find . -type f

如果要搜索具有多个扩展名的文件,请使用以逗号分隔的 c 字符。

假设您想要查找当前目录中的所有常规空文件。

find . -type f -empty

假设您要查找当前目录中的所有空目录,请在 find 命令中使用 -d 和 -empty 选项,如下所示。

find . -type d -empty

按大小查找文件

如果你想查找特定大小的文件,可以使用-size参数。您可以使用以下后缀及其确切尺寸。

  • c:字节
  • k:千字节
  • M:兆字节
  • G:千兆字节
  • b:512字节块

假设您要查找当前目录中恰好为 50 字节的所有文件。您必须执行以下命令。

find . -size 50c

假设您要查找当前目录中所有大于 50 字节或小于 50 字节的文件,您必须执行以下命令之一。

find . -size +50c
find . -size -50c

按所有者(用户)查找文件

如果要搜索特定用户拥有的文件,可以使用 -user 选项。该命令的语法应如下所示。

find <path> -user <username>

假设您要搜索当前目录中 Vitux 拥有的文件。该命令应如下所示。

find . -user vitux

使用定位命令查找文件

第二个是locate 命令,您可以使用它来搜索系统中的文件和目录。

首先,您必须在 Debian 12 计算机上安装locate 实用程序。使用 root 登录并在终端上执行以下命令。当系统要求您确认时,按键盘上的 Y。

apt-get install locate

等待操作完成。

Locate 是一个更快的命令,它依赖于文件系统的数据库。它每天更新一次,但如果您想手动更新,请使用 root 权限在终端上运行以下命令。

updatedb

要使用当前目录中的locate命令搜索文件,请在终端上执行以下命令。

locate <filename>

假设我的文件名是test.txt。完整的命令应如下所示。

locate test.txt

您可以使用 -i 选项忽略文件名大小写。

locate -i <filename>

或者

locate -i test.txt

定位和查找命令都有助于搜索文件。主要使用哪个命令取决于您。它们可以通过使用 pipeline、wc、sort 和 grep 等其他命令来扩展。

©2015-2025 艾丽卡 support@alaica.com