Як знайти файл в Linux
Хочете знати найефективніші способи пошуку ваших файлів у системі Linux? Ознайомтеся з нашим маленьким посібником, щоб дізнатися про всі найкращі команди та їхній синтаксис.

Існує багато способів пошуку файлів у системі Linux. Кожен має свої плюси та мінуси. Але для найкращих результатів добре знати якомога більше з них.
Графічні програми часто постачаються з інтегрованим пошуком, і хоча вони можуть бути зручними, вони часто мають свої обмеження. Ось тут знадобляться інструменти пошуку оболонки, оскільки вони пропонують більше можливостей.
У наведеному нижче списку показано найпоширеніші способи пошуку файлу в Linux, а також синтаксис і шаблони використання для кожної з програм.
Слід зазначити, що лише перша команда працює з графічними програмами, тому решта є програмами оболонки.
Методи пошуку Linux
| Command | Опис | |
|---|---|---|
| 1. | CTRL + F | Викликає функцію пошуку в більшості програм із графічним інтерфейсом користувача |
| 2. | знаходити | Розширений інструмент пошуку з потужними функціями |
| 3. | розмістити | Швидкий інструмент пошуку на базі даних |
| 4. | GREP | Потужний інструмент пошуку на основі регулярних виразів |
| 5. | який | Використовується для пошуку виконуваних файлів |
| 6. | де | Шукає виконувані файли, їх джерела та файли довідкових сторінок |
1. CTRL+F
Ctrl+F є стандартною функцією більшості графічних програм для пошуку файлів у системі. Він працює з файловим менеджером Gnome Nautilus, файловим менеджером KDE Dolphin і Thunar, файловим менеджером Xfce.
Він також працює з багатьма іншими програмами, такими як Evince для читання файлів .pdf, браузером Firefox, офісними програмами, такими як Libre Office, і багатьма іншими.
Використання просте. Під час роботи з програмою і вам потрібно знайти файл, одночасно натисніть клавіші Ctrl і F на клавіатурі, і в програмі відкриється панель пошуку.
2 Знайдіть
Коли справа доходить до пошуку матеріалів на платформі Linux, find є прабатьком усіх наявних інструментів. Це універсальна та дуже потужна програма, яка має широкий спектр опцій, щоб змусити її працювати в дуже різних стилях.
Існує так багато опцій, операторів і форматів друку для програми пошуку, що неможливо просто прочитати та знати їх усі. Вам потрібно буде постійно читати сторінки man та info, якщо ви хочете вивчити програму пошуку. Ось кілька прикладів і те, що вони роблять:
man find > #read сторінки довідки знайти записи
знайти інформацію > #читати інформаційні сторінки знайти записи
Загальний синтаксис для пошуку такий:
знайти [параметри] [шлях…] [вираз]
Там, де параметри посилаються на численні параметри, шлях – це місце, з якого ви хочете почати пошук, а вираз включає багато шаблонів пошуку та операторів, доступних для використання.
Однак є кілька варіантів, які можна швидко вивчити та запам’ятати, і вони такі:
а) -типу
Це шукає файл за його типом і може містити «f» для звичайного файлу, «d» для каталогу та «l» для символічного посилання.
find -type f -name '*.js' #знайти всі файли JavaScript у домі користувача
б) - назва
Як показано вище, це шукає наявність заданого шаблону (*.js) у назві файлу.
в) -mtime
За допомогою параметра -mtime ви вказуєте критерії пошуку на основі часу, наприклад
find -mtime 7 #знайти всі файли, які були змінені за останній тиждень (7 днів)
г) -розмір
Ви також можете використовувати розмір файлу як критерій пошуку, наприклад
find -size +15k > #знайти всі файли в домашньому каталозі розміром понад 15 кілобайт
Зауважте, що всі аргументи параметрів можуть приймати числа – або +, щоб показати менше або вище. Наприклад, -2 для менш ніж 2 і +15 для більш ніж 15. Існує так багато інших варіантів, і вам слід прочитати записи «man find» і «info find» у вашій оболонці, щоб зрозуміти цю потужну програму.
3. Знайдіть
Команда locate є ще одним вражаючим інструментом пошуку в Linux. Вона не така багатофункціональна, як команда find, але вона набагато швидша, оскільки використовує записи бази даних для здійснення своєї магії.
Locate також простіший у використанні, і вам не потрібно вводити шлях пошуку. Просто введіть locate, а потім шаблон імені файлу, і він поверне всі файли, які відповідають цьому шаблону. Наприклад:
locate moz > #знайти всі файли, які містять «moz» у своїй назві, наприклад mozilla
Locate також пропонує кілька параметрів, наприклад -i або –ignore-case, оскільки це інструмент пошуку з урахуванням регістру. наприклад:
locate -i moz > #знайти файли з іменами mozilla, MOZILLA та Mozilla
4. Grep
Іноді ви можете знати деякі слова, що містяться у файлі. Таким чином, хоча команди find і locate можуть не підходити для пошуку такого файлу, однак команда grep ідеально підходить для цієї роботи.
Grep означає Global Regular Expression Print. Він приймає регулярні вирази як аргументи, а також може форматувати свій вихід на основі ваших уподобань. Він може розфарбувати зібрані слова, надрукувати їхні номери рядків або надрукувати лише назву зіставленого файлу.
Майте на увазі, що grep відповідає і імені файлу, і вмісту файлу, і ви також можете надати шаблони для кожного. Синтаксис grep виглядає так:
grep [параметри] файл шаблону
Доступно багато варіантів, і ви можете комбінувати їх, як вважаєте за потрібне, але ви отримаєте максимальну користь від grep, якщо вивчите регулярні вирази (регулярні вирази), оскільки вони можуть бути справді корисними. Інформаційні та довідкові сторінки також дуже добре пояснюють це.
Ось декілька прикладів grep і те, що вони роблять:
grep 'foobar' > #знайти всі файли, які містять foobar, у поточному каталозі
grep -in 'foobar' > #не враховувати регістр і друкувати номери рядків
grep -inr 'foobar' /home/user > #рекурсивний пошук у всіх папках у /home/user
grep -ir 'table' *.html > #знайти всі файли html, які містять таблицю, у домашньому каталозі
5. Який
Якщо з якоїсь причини вам потрібно знати абсолютний шлях до виконуваного файлу в Linux, скористайтеся командою which. Це працює так:
which grep > #повертає /bin/grep в Ubuntu як абсолютний шлях grep
which which > #повертає /usr/bin/which
6. Де знаходиться
Whereis трохи схожий на цей, але він повертає двійкові файли, вихідні файли та файли довідкових сторінок для будь-якої команди. Ось приклад:
whereis grep > #повертає лише двійкові файли та файли man /bin/grep /usr/share/man/man1/grep.1.gz
Висновок
Ми дійшли до кінця нашого способу пошуку файлу в списку команд Linux. Як бачите, в оболонці є широкий набір інструментів і опцій. Тому кожен знайде щось для себе.
Просто знайдіть час, щоб навчитися та практикуватися з цими інструментами, а також не забудьте прочитати їхні інформаційні та довідкові сторінки. Незабаром ви станете дуже ефективними з пошуком файлів у Linux.




