Пошук файлів у командній рядку

На жаль, в Linux, звичайно, Ubuntu, пошук файлів за замовчуванням за графіком не є найбільш корисним способом пошуку файлів.

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

Знайдіть

Легка, швидка команда називається "locate". Щоб використовувати цю команду на терміналі, просто наберіть:

$ locate -i searchstring

Це буде пошук всіх файлів і каталогів з "пошуковою стрічкою" у назві, і -i означає, що пошук не чутливий до регістру (тобто він знайде пошукову строку, Searchstring, sEaRcHsTrInG тощо).

Результати є миттєвими, оскільки система створила базу даних (також відомий як індекс), щоб повідомити вам, де розміщені файли. Єдина проблема полягає в тому, що щойно створені або переміщені файли можуть не знаходитись належним чином до наступного оновлення бази даних, і у вас немає багатьох варіантів вибору для вашого пошуку.

Примушування локації для оновлення бази даних / індекс виконується за допомогою судо updatedbі це займає багато часу.

приклад:

$ знайдіть -i omgubuntu.desktop

знайти

Існує набагато більш потужна команда, доступна для вас, яка називається "find".

Ви можете сказати "знайти", де шукати, які критерії використовувати в його пошуку, і які дії потрібно зробити, коли ви знайшли те, що ви шукаєте.

Синтаксис "знайти":

$ знайти <де почати пошук> <критерій пошуку> <дії, які потрібно виконати>

Якщо ви не додасте жодних параметрів, пошук за замовчуванням буде виконувати пошук поточного робочого каталогу (або "."), Не використовує жодних критеріїв пошуку (по замовчуванню показує всі файли), а також -print (який, незважаючи на його назву, відображає або" друкує "результати на екрані) як єдину дію, яку потрібно зробити.

Два приклади:

 $ sudo find / -type f -mmin -10

Цей приклад знайде (починаючи з кореневого каталогу або / і рекурсивно шукаючи підкаталоги) всі звичайні файли (тип f означає звичайні файли, без цього він буде знаходити звичайні файли + спеціальні файли + каталоги), які були змінені менш ніж десять хвилин тому (-mmin -10), а потім відображати для вас результати.

Це було б корисно, якщо ви знаєте, що ви нещодавно редагували файл, але не знаєте, де ви його помістили, або вам доведеться знайти файл журналу для програми, яка зазнала аварії.

Ви можете додати Суду тут, оскільки пошук не шукає файли / каталоги, які поточний користувач не має для нього дозволів, і він повертає повідомлення про помилку, якщо ви не sudoer - просто будьте обережні!

 $ знайдіть ~ -імя "* new *" -exec mv -v {} / media / current-projects /;

Це знайде у вашому домашньому каталозі (~) ім'я з іменем, нечутливий до регістру (-iname), що містить новий ("* new *") і виконує (-exec) переміщення (mv) результатів ({}) до / media / current-projects / (; вимагається -exec, щоб показати кінець команди, яка буде виконана). Тому всі ваші файли будуть переміщені в одне і те ж місце. mv -v відображає результати команди переміщення з (-v) erbose повідомленнями.

Ще одне попередження з -exec, хоча це і є потужним коли ви використовуєте без турботи, ви можете перезаписати весь домашній каталог або весь диск - так будьте обережні!

Соміс - варіант графічного інтерфейсу

Для тих з вас, хто просто не може обійтися без графічного інтерфейсу, ви можете знайти програму Catfish в сховищах - це дозволяє запускати обидва розмістити і знаходити з графічного інтерфейсу, але дуже обмежений у варіантах.

Подумайте про сома як еквівалент пошуку Windows. Якщо ви хочете отримати повну потужність пошуку, вам доведеться запустити його з командного рядка, скориставшись швидкими порадами вище.

Встановіть Catfish з програмного забезпечення Ubuntu

Який метод ви вважаєте за потрібне для пошуку файлів? Відповідь нижче, і я буду $ grep Nixie * це пізніше. ℘

джерело

залишити коментар

Цей сайт використовує Akismet для зменшення спаму. Дізнайтеся, як обробляються ваші дані коментарів.