查找名称完全相同的文件而不使用通配符


12

我一直在使用Ubuntu大约两个星期,但仍然对简单的文件操作感到沮丧。

我想找到一个名为9.jpg的文件。我尝试过的每个内部命令和第3方程序都会给我99.jpg,999.jpg,“ lovepotion number9.jpg”和不计其数的其他类似命令。

如何搜索不带通配符的精确文件名?

这只是我最近的沮丧。我显然缺少基本的东西。任何地方都很好的教程?

Answers:


9
locate /9.jpg

请注意,/如果没有它,您将只找到每个以结尾的文件9.jpg。但是从技术上讲,它会在所有驱动器上使用它作为子字符串来搜索文件路径9.jpg.png,因此,这对于具有文件扩展名的文件更有效-名为log的文件/log将向您显示中的每个文件/var/log/


男人说“使用locate - r \[filename]”。两者似乎都起作用。
phil294

@Blauhirn您在说什么man locate?使我说用locate -b '\NAME'
wjandrea

@wjandrea我的也是。我不知道了 也许手册已更改
phil294

8

如何搜索不带通配符的精确文件名?

要搜索不带通配符的确切文件,请使用find命令。

  1. 通过按Ctrl+ Alt+ 打开终端T

  2. 输入命令并点击 Enter

    find / -name 9.jpg
    

如果只想在主文件夹中搜索,请使用~/代替,/依此类推。用/您要在其中搜索的目录名称替换。如果要搜索当前目录及其所有目录,请使用./代替/

  • 有关获取学习Linux文件系统的帮助,请参阅此页面
  • 另请参阅此非常有用的指南,以熟悉Linux系统,尤其是Debian及其衍生版本(如Ubuntu)。

2

根据设计,在鹦鹉螺(文件管理器)中的搜索仅限于简单的类似于通配符的选项。如果您需要更复杂的功能,则可以使用GUI或命令行。

GUI:通过软件中心或通过键入来安装软件包gnome-search-tool

 sudo apt-get install gnome-search-tool

运行它(称为“搜索文件”)。将主条目保留为空,并添加一个名为“名称与正则表达式匹配”的搜索选项。在新的文本字段中,键入^9.jpg^开头与正则表达式中字符串的开头匹配)。

在此处输入图片说明

至于命令行,该find实用程序将为您提供准确的答案:

 find . -name '9.jpg'

考虑一下:目录中的文件“ 999.jpg”和“ 9.jpg” t/

$ ls t
99.jpg  9.jpg
$ find . -name '9.jpg'
./t/9.jpg
$ find . -name '*9.jpg'
./t/99.jpg
./t/9.jpg
$

我希望这很清楚。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.