Знайдіть файл з точною назвою, не використовуючи підстановку


12

Я використовую Ubuntu протягом двох тижнів і, все ще розчарований простими файловими операціями.

Я хочу знайти файл під назвою 9.jpg . Кожна внутрішня команда та стороння програма, яку я спробував, дає мені 99.jpg, 999.jpg, "lovepotion number9.jpg" та мільйон інших подібних.

Як шукати ТОЧЕ ім'я файлу БЕЗ підстановок?

Це лише моє останнє розчарування. Я, очевидно, пропускаю щось базове. хороший підручник де завгодно?

Відповіді:


9
locate /9.jpg

Зауважте /: без цього ви просто знайдете кожен файл, який закінчується 9.jpg. Технічно він шукає шляхи до файлів із ним як підрядку на всіх дисках, що включає 9.jpg.png, так що це краще працює з файлами, що мають розширення файлів - файл із іменем журналу за допомогою /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

Пошук у nautilus (файловому менеджері), за задумом, обмежений простим символом, що нагадує символи. Якщо вам потрібно щось більш складне, ви можете перейти до 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
$

Я сподіваюся, що це зрозуміло.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.