定位、查找、哪个 - 如何为这些实用程序启动索引/扫描命令?

l0c*_*b0x 7 linux search find

如何重新扫描我的驱动器,以便我的“搜索实用程序”能够在我的系统上找到一个新文件?

我很难在谷歌上搜索如何向这些应用程序中的任何一个启动索引/扫描命令。我主要使用:“查找”和“定位”,但我认为了解其他搜索应用程序及其索引/扫描命令是个好主意(抱歉,不知道如何称呼它最好:索引或扫描扫描系统上的新文件)

  • 我的问题:我在系统中安装或下载了一个新文件,但不知道在哪里。
  • 我的需要:扫描我的驱动器(最好按文件夹,但我愿意接受完整扫描)
  • 我的操作系统: Linux Debian (Lenny)

谢谢!

hay*_*lci 12

Find 不需要索引,每次运行都会遍历磁盘。例子

$ find / -name "*mynewprogram*"
Run Code Online (Sandbox Code Playgroud)

locate 和变体需要索引文件,但它们的工作速度非常快。'locate' 来自 GNU findutils。'slocate' 被推荐到 etch;这是一个更“安全”的 locate 版本,用户不会看到他们无法访问的文件。在 lenny 和更新版本中推荐使用 'mlocate',mlocate 具有更有效的索引机制。

$ sudo updatedb  # to update the index.
$ mlocate  mynewprogram
Run Code Online (Sandbox Code Playgroud)

which在 $PATH 中搜索您提供的二进制名称。不需要索引。

$ which touch
/usr/bin/touch
Run Code Online (Sandbox Code Playgroud)

如果要查看软件包的已安装文件,请使用此

dpkg -L coreutils
Run Code Online (Sandbox Code Playgroud)

查看哪个包安装了特定文件

$ dpkg -S /usr/bin/touch
coreutils: /usr/bin/touch
Run Code Online (Sandbox Code Playgroud)