Більшість користувачів, які намагаються знайти файли та папки на своєму ПК з Linux, вдаються до файлового менеджера. Зазвичай інструменти пошуку файлового менеджера можуть знайти те, що потрібно користувачам — до певної міри. Проблема в тому, що вони, як правило, повільні та вибагливі. Для більш потужного пошуку файлів у Linux розгляньте можливість звернення до терміналу.
ПОВІДОМЛЕННЯ СПОЙЛЕРА: прокрутіть униз і перегляньте відеоурок у кінці цієї статті.
У цьому посібнику ми розглянемо кілька простих способів швидко та ефективно знайти файли та папки за допомогою терміналу Linux.
1. Find And Grep
Find — це потужний інструмент пошуку для робочого столу Linux. Він працює в командному рядку, виконуючи пошукові запити на основі ключових слів, які вказує користувач. Знайти дуже складно, і в результаті багато хто ним користується. Ось як користуватися find. Спочатку відкрийте термінал і запустіть find. Ви помітите, що find містить майже всі файли на вашому ПК. Добре, що find так багато переглядає, але проблема з таким запуском полягає в тому, що ви ніколи не зможете знайти те, що шукаєте.
Щоб краще використовувати інструмент пошуку, об’єднайте його разом за допомогою кількох команд. Зокрема, grep. Grep також дуже потужний, і з ним користувачі можуть відфільтровувати конкретні ключові слова. Поєднання цього з find є чудовим поєднанням. Наприклад, щоб знайти файли та папки з позначкою «bitcoin» на вашому ПК з Linux, ви повинні зробити:
знайти | grep біткойн
Grep відфільтровує find і показує лише результати, у яких є ключове слово «bitcoin».
Він також працює з певними розширеннями файлів. Наприклад, щоб знайти кожен файл PNG на вашому ПК з Linux, запустіть find і grep так:
find | grep .png
Ймовірно, на вашому комп’ютері з Linux є маса PNG-файлів, тому, щоб зробити список зручнішим, введіть більше як третю команду.
find | grep .png | more
2. Mlocate
Mlocate — ще одна дуже корисна команда. Можливо, це зручніше для користувача, ніж знайти. Причина того, що місцезнаходження працює краще, полягає в тому, що він може краще шукати за ключовими словами. Для цього не потрібно використовувати додаткові параметри команд або такі речі, як grep. На жаль, інструмент визначення місцезнаходження попередньо встановлено не в кожному дистрибутиві Linux. Ось як це налаштувати. Спочатку встановіть програмне забезпечення на свій ПК.
Ubuntu
sudo apt install mlocate
Debian
sudo apt-get install mlocate
Arch Linux
sudo pacman -S mlocate
Fedora
sudo dnf install mlocate
OpenSUSE
sudo zypper install mlocate
Після встановлення програмного забезпечення відкрийте термінал і скористайтеся командою updatedb, щоб створити нову базу даних. Необхідно створити нову базу даних, інакше команда locate вийде з помилкою і відмовиться працювати. Майте на увазі, що база даних сканує ВСІ ФАЙЛИ на вашому ПК, тому її потрібно запускати як root, а не звичайну команду користувача.
sudo updatedb
Команда updatedb займає досить багато часу в залежності від швидкості вашого жорсткого диска, а також від кількості файлів у системі. Тримайте термінал відкритим і запустіть команду. Ви дізнаєтеся, що база даних готова до роботи, як тільки термінал знову прийме введення тексту.
Щоб здійснити пошук за допомогою інструмента визначення місцезнаходження, дотримуйтесь прикладу нижче. Обов’язково змініть «ім’я файлу» або «ключове слово» на власні пошукові терміни, оскільки ці слова є лише заповнювачами.
locate filename
або
locate keyword
або
locate "*.FileExtension"
Після введення пошукового терміна locate перевірить базу даних і поверне результати. Якщо є багато речей, які потрібно розібрати, подумайте про передачу результатів у текстовий файл на потім.
locate keyword >> locate-keyword-results.txt
Фільтр Mlocate текстовий файл
Передача результатів пошуку до текстового файлу — це хороший спосіб зберегти відставання результатів пошуку для подальшого використання. Якщо вам потрібно відфільтрувати ці результати пошуку, спробуйте використовувати команду cat і grep разом.
Наприклад, щоб відфільтрувати попередні результати пошуку, щоб знайти всі файли MP3 на моєму ПК, команда:
cat locate-mp3-results.txt | grep "mp3 keyword"
Grep відфільтрує саме потрібний вам файл.
3. Л. С. І Греп
Окрім використання інструменту пошуку для сканування вашого ПК з Linux, є й інші способи пошуку файлів. Основний спосіб зробити це в терміналі за допомогою команди ls (він же List). Цей інструмент простий, але містить список усіх елементів у каталозі. Це може бути дуже корисно, якщо вам потрібно знайти певну папку. Однак сам по собі ls може бути вкрай неефективним. Щоб покращити цю команду, об’єднайте її з grep. Це полегшить фільтрацію папок або файлів, які ви шукаєте. Або, принаймні, відфільтруйте його до кількох ключових слів.
Спочатку за допомогою cd перейдіть до каталогу, де ви шукаєте певні файли або папки.
Потім поєднайте ls і grep.
ls | grep keyword
Крім того, ls також показує приховані папки за допомогою:
ls -a | grep keyword