Примери за използване на командата Find в Linux

Най-популярните файлови мениджъри за операционните системи на ядрото на Linux имат доста функционален инструмент за търсене. Въпреки това, параметрите, които не винаги присъстват в него, са достатъчни за потребителя да търси необходимата информация. В този случай стандартната програма, която минава през терминала, идва на помощ. Тя ви позволява лесно да намерите необходимите данни в определена директория или в цялата система, като въведете команда, аргумент и опция.

Използвайте командата find в Linux.

Командата find е предназначена за търсене на различни обекти, включително файлове от всякакви формати и директории с различна дълбочина. От потребителя се изисква само да въведе самата команда, да определи желаната стойност и да зададе аргументи за задаване на параметри на филтриране. Извършването на процедурата от самата програма обикновено не отнема много време, но зависи и от количеството сканирана информация. Сега да разгледаме по-подробно примерите за използване на намирането .

Отидете в директорията през конзолата

Като начало бих искал да се оттегля малко от основния екип и да докосна темата за допълнителни действия, които ще помогнат в бъдеще при управлението от конзолата. Факт е, че помощните програми в дистрибуциите на Линукс не се изострят от търсенето на всички елементи на компютъра. Всички процеси трябва да се стартират само с пълното местоположение на елементите или да отидете на местоположението чрез командата cd . Това може да се направи доста лесно:

  1. Отворете инсталирания файлов мениджър и отидете до желаната папка, в която искате да използвате командата find в бъдеще.
  2. Отидете до правилната директория чрез файловия мениджър на Linux

  3. Кликнете с десния бутон на мишката върху някой обект и намерете елемента "Свойства" .
  4. Преминаване към свойства на обект в операционната система Linux

  5. Ще видите папката-майка с пълен път. Запомни го, за да направи прехода от "Терминал" .
  6. Открийте родителската папка на обект чрез свойствата в Linux

  7. Сега стартирайте конзолата, например, през менюто.
  8. Стартиране на терминал за въвеждане на команди в Linux

  9. Напишете там командата cd /home/user/folder , където потребителят е името на домашната папка на потребителя и папката е името на необходимата директория.
  10. Преместете се до място в Linux терминал

Ако преди да използвате find , за да изпълните горните инструкции, можете да пропуснете пълния път до файла, при условие че той е в избраното местоположение. Подобно решение ще ускори значително входящите команди в бъдеще.

Търсете файлове в текущата директория

Когато стартирате find от конзолата, която току-що стартирахте, ще получите резултатите от търсенето в домашната си директория на активния потребител. В друг случай, например, когато активирате по време на търсене по местоположение, в резултатите ще видите всички подпапки и файловете от това място в тях.

Използване на командата find без аргументи в Linux

Активирането на търсене без аргументи и опции се използва, когато трябва да видите всички елементи едновременно. Ако името им не се вписва изцяло в низове, си струва да промените командата, така че да намери формата find . -print find . -print .

Търсене на файлове в указаната директория

Командата за показване на файлове през даден път е почти същата като тази, която споменахме по-горе. Трябва също да укажете find и след това да добавите ./folder ако искате да разберете за директорията в текущото местоположение, или трябва да посочите пълния път, като напишете например find ./home/user/downloads/folder , където е папката крайна директория Всеки елемент ще бъде показан в отделни редове в реда на тяхната дълбочина.

Използване на командата find с местоположението на файла в Linux

Търсете по име

Понякога има нужда да се показват само обекти, които отговарят на името. След това потребителят трябва да зададе отделна опция за командата, така че да разбира жалбата. Входният ред приема формата: find . -име "дума", където думата е ключова дума за търсене, която трябва да бъде написана в двойни кавички и с малки букви за всеки знак.

Намиране на файлове по име с помощта на командата find в Linux

Ако не знаете точния случай на всяка буква, или искате да покажете всички съвпадащи имена, без да вземете предвид този параметър, въведете find . -iname "word" в конзолата find . -iname "word" find . -iname "word" .

За да филтрирате резултатите по ключова дума, към аргумента -name се добавя още един. Командата е във формата за find . -not -name "word" find . -not -name "word" , където думата е дума, която трябва да бъде изтрита.

Активирайте командата за намиране на филтриране на ключови думи в Linux

Все пак понякога има нужда да се намерят обекти с един ключ, като се изключва другото. След това на свой ред се задават няколко опции за търсене, а входната линия е следната: find . -name "word" -not name "*.txt" find . -name "word" -not name "*.txt" . Моля, обърнете внимание, че вторият аргумент в кавички показва " * .txt" , което означава, че намират работа не само с имената, но и с файловите формати, които са посочени в тази форма.

Комбинирано търсене по име с командата find в Linux

Има оператор ИЛИ . Тя ви позволява да намерите едно или няколко подходящи аргументи наведнъж. Всеки от тях се посочва отделно, с добавяне на съответните аргументи. Резултатът е нещо подобно: find -name "word" -o -name "word1" .

Използване на опцията OR в командата find Linux

Определяне на дълбочината на търсенето

Командата find ще помогне на потребителя дори когато той трябва да намери съдържанието на директории само до определената дълбочина, например, анализът не се изисква вътре в третата подпапка. За да зададете тези ограничения, въведете find . -maxdepth N -name "word" find . -maxdepth N -name "word" , където N е максималната дълбочина, а -name "word" е последващ аргумент.

Посочете дълбочината на сканиране с командата find в Linux

Търсете няколко директории

В много директории има няколко папки с различно съдържание. Ако има голям брой от тях и търсенето трябва да се извърши само в определени, тогава ще трябва да посочите това, когато въвеждате find ./folder ./folder1 -type f -name "word" и -name "word" - останалите аргументи.

Търсете няколко папки, когато използвате командата find в Linux

Показване на скритите елементи

Без съответния аргумент скритите обекти в сканираните директории няма да се показват в конзолата. Следователно, потребителят ръчно въвежда допълнителна опция, за да завърши с командата: find ~ -type f -name ".*" . Ще получите пълен списък на всички файлове, но ако някои от тях не са достъпни, въведете sudo в реда преди думата find, за да активирате правата на суперпотребителя.

Покажете скритите файлове с командата find в Linux

Сканиране на началните папки за групи и потребители

Всеки потребител може да създаде неограничен брой директории и обекти на различни места. Най-бързият начин да намерите информацията, която принадлежи на един от потребителите, като използвате командата find и един от нейните аргументи. В списъка "Терминал" find . -user username find . -user username , където потребителското име е потребителското име. След въвеждане сканирането ще започне автоматично.

Показване на файлове, притежавани от команда find в Linux

Приблизително същата схема работи с потребителските групи. Анализът на файловете, свързани с една от групите, се find /var/www -group groupname чрез find /var/www -group groupname . Не забравяйте, че може да има голям брой обекти и понякога отнема много време, за да ги изведете.

Показване на файлове, принадлежащи към определена група, чрез командата find в Linux

Филтриране по дата на промяна

Операционната система автоматично записва датата на промяна на всеки съществуващ файл. Командата find ви позволява да намерите всички от тях по зададения параметър. Необходимо е само да регистрирате sudo find / -mtime N , където N е броят на предишните дни, когато обектът е бил последно модифициран. Префиксът sudo тук е необходим за получаване на данни за файлове, предназначени само за суперпотребителя.

Филтрирайте по дата на промяна с команда find в Linux

Ако се интересувате от преглед на елементи, които са били отворени преди няколко дни, редът малко се променя на sudo find / -atime N

Филтрирайте по дата на отваряне с команда find в Linux

Филтриране по размер на файла

Всеки обект има свой размер, съответно, командата за търсене на файлове трябва да има функция, която ви позволява да ги филтрирате по този параметър. find е в състояние да направи това, потребителят трябва само да зададе размера по аргумент. Просто въведете find / -size N , където N е обемът в байтове, мегабайта (M) или гигабайта (G).

Филтриране на търсенето по размер с помощта на find в Linux

Можете да зададете обхвата на желаните елементи. След това квалификаторите се вписват в командата и вие получавате, например, следния ред: find / -size +500M -size -1000M . Този анализ ще покаже файлове с повече от 500 мегабайта, но по-малко от 1000.

Задайте обхвата на файловите размери, за да намерите чрез намиране в Linux

Търсене на празни файлове и директории

Някои от файловете или папките са празни. Те просто заемат допълнително дисково пространство и понякога пречат на нормалното взаимодействие с компютъра. Те трябва да бъдат намерени, за да се вземат решения за по-нататъшни действия, и find /folder -type f -empty ще помогне с това, къде / папка е мястото, където се извършва сканирането.

Показване на празни обекти с помощта на find в Linux

Отделно, бих искал накратко да спомена други полезни аргументи, които от време на време стават полезни за потребителя:

  • -mount - ограничение само за текущата файлова система;
  • -type f - само за показване на файлове;
  • -type d - показва само директории;
  • -nogroup , -nouser - търсене на файлове, които не принадлежат на нито една група или не принадлежат на потребителя;
  • -version - разберете версията на използваната програма.

На това познаване на командата find е завършена. Ако искате да изучавате подробно други стандартни конзолни инструменти на операционните системи на ядрото на Linux, съветваме ви да се обърнете към нашия отделен материал на следния линк.

Още подробности: Често използвани команди в терминала на Linux

След търсене на необходимата информация, можете да извършвате всякакви други действия с тях, например редактиране, изтриване или изучаване на съдържание. Това ще помогне на други вградени комунални услуги "Терминал" . Примери за тяхното използване са дадени по-долу.

Вижте също: Примери на команди Впиши / котка / LS в Linux