Повечето хора използват графичен файлов мениджър за намиране на файлове в Linux, като например Nautilus в Gnome, Делфин в KDE и Thunar в Xfce. Има обаче няколко начина да използвате командния ред за намиране на файлове в Linux, без значение кой мениджър за настолни компютри използвате.
Командата "find" ви позволява да търсите файлове, за които познавате приблизителните имена на файлове. Най-простата форма на командата търси файлове в текущата директория и рекурсивно чрез своите поддиректории, които отговарят на предоставените критерии за търсене. Можете да търсите файлове по име, собственик, група, тип, разрешения, дата и други критерии.
Въвеждането на следната команда в подкана съдържа списък на всички файлове, намиращи се в текущата директория.
намирам .
Точката след "find" показва текущата директория.
За да намерите файлове, които съответстват на конкретен модел, използвайте -name
аргумент. Можете да използвате metacharacters на имена на файлове (като *
), но трябва да поставите бягство ( \
) пред всеки от тях или ги прикрепете в цитати.
Например, ако искаме да намерим всички файлове, които започват с "pro" в директорията Documents, ще използваме cd Документи /
команда за промяна в директорията Документи и след това въведете следната команда:
намирам . -name pro \ *
Изброяват се всички файлове в текущата директория, започващи с "pro".
Забележка: Командата за намиране по подразбиране е чувствителна към малки и големи букви. Ако искате търсенето на дума или фраза да не е чувствително към буквите, използвайте -iname
с командата за намиране. Това е нечувствителна версия на -name
команда.
ако намирам
не намира никакви файлове, отговарящи на вашите критерии, не продуцира.
Командата за намиране има много възможности за прецизиране на търсенето. За повече информация относно командата за намиране, изпълнете човек намери
в терминален прозорец и натиснете Enter.
Командата за локализиране е по-бърза от командата find, защото използва по-рано създадена база данни, докато командата find намира в реалната система чрез всички актуални директории и файлове. Командата за локализиране връща списък с всички имена на пътеки, съдържащи посочената група знаци.
Базата данни се актуализира периодично от cron, но можете също така да го актуализирате по всяко време, за да можете да получите най-актуалните резултати. За да направите това, напишете следната команда:
sudo updatedb
Въведете паролата си, когато получите подкана.
Основната форма на командата за локализиране намира всички файлове на файловата система, започващи от корен, които съдържат всички или част от критериите за търсене.
намерете мидата
Например горната команда намери два файла, съдържащи "mydata" и един файл, съдържащ "данни".
Ако искате да намерите всички файлове или директории, които съдържат точно и само вашите критерии за търсене, използвайте -b
с командата за локализиране, както следва.
намерете -b '\ mydata'
Обратното наклонена черта в горната команда е гробищен знак, който осигурява начин за разширяване на заместващите символи в неспецифично име на файл в набор от конкретни имена на файлове. Заместващият символ е символ, който може да бъде заменен с един или повече знака, когато изразът е оценен. Най-често срещаните заместващи символи са въпросителен знак ( ?
), което означава един знак и звездичката ( *
), което означава съседен низ от знаци. В горния пример обратната наклонена черта забрани подмяната на "mydata" с "* mydata *", така че да завършите само с резултати, съдържащи "mydata".
Командата mlocate е ново изпълнение на локализирането. Той индексира цялата файлова система, но резултатите от търсенето включват само файлове, до които има достъп до текущия потребител. Когато актуализирате базата данни на mlocate, тя съхранява информация за времевата маркировка в базата данни. Това позволява на mlocate да разбере дали съдържанието на директорията е променено, без да чете съдържанието отново и прави актуализациите на базата данни по-бързи и по-малко взискателни на твърдия ви диск.
Когато инсталирате mlocate, библиотеката / usr / bin / locate бинарен файл се променя, за да сочи към. За да инсталирате mlocate, ако още не е включена в дистрибуцията ви на Linux, въведете следната команда в подканата.
sudo apt-get инсталирате
ЗАБЕЛЕЖКА: Ще ви покажем команда по-късно в тази статия, която ви позволява да определите къде се намира изпълнимия файл за команда, ако съществува.
Командата mlocate не използва същия файл на базата данни като стандартната команда за локализиране. Следователно може да искате да създадете базата данни ръчно, като напише следната команда:
sudo /etc/cron.daily/mlocate
Командата mlocate няма да работи, докато базата данни не бъде създадена ръчно или когато скриптът се стартира от cron.
За повече информация относно локализирането или командата mlocate въведете човек намерете
или Човекът се разпалва
в терминален прозорец и натиснете Enter. Показва се същия екран за помощ и за двете команди.
Командата "която" връща абсолютния път на изпълнимия файл, който се извиква при издаване на команда. Това е полезно при намирането на местоположението на изпълнимия файл за създаване на пряк път към програмата на работния плот, на панел или на друго място в мениджъра на работния плот. Например, напишете командата който огън
показва резултатите, показани на изображението по-долу.
По подразбиране коя команда показва само първия изпълним изпълним файл. За да покажете всички съвпадащи изпълними файлове, използвайте -а
опция с командата:
който - огън
Можете да търсите множество изпълними файлове едновременно, както е показано на следващото изображение. Извеждат се само пътищата за намерени изпълними файлове.В примера по-долу бе намерен само изпълнимият файл "ps".
ЗАБЕЛЕЖКА: Коя команда търси само променливата PATH на текущия потребител. Ако търсите изпълнителен файл, който е достъпен само за root потребител като нормален потребител, няма да се показват никакви резултати.
За повече информация относно коя команда въведете "човек, който" (без котировките) в командния ред в прозореца на терминала и натиснете Enter.
Командата whereis се използва, за да се установи къде са разположени файловете на двоичните, източниците и файловете на човека за дадена команда. Например, напишете където е огън
в прозореца се показват резултати, както е показано на следващото изображение.
Ако искате да покажете само пътя към изпълнимия файл, а не пътищата към страниците на източника и на човека (ual), използвайте -b
опция. Например командата whereis -b firefox
ще се показва само / ЮЕсАр / хамбар / Firefox
като резултат. Това е удобно, защото най-вероятно ще търсите по-често изпълнимия файл на програмата, отколкото бихте търсили страници за източника и за човека за тази програма. Можете също така да търсите само изходните файлове ( -с
) или само за страниците на човека ( -м
).
За повече информация относно командата whereis въведете човек, където
в терминален прозорец и натиснете Enter.
Командата whereis ви показва местоположението на двоичните, източника и манипулационните страници за команда, докато командата само ви показва местоположението на двоичното за командата.
Командата whereis търси чрез списък с конкретни директории за двоичните, източниците и файловете с хора, като коя команда претърсва директорите, изброени в променливата на обкръжението PATH на текущия потребител. За командата whereis, списъкът с конкретни директории може да бъде намерен в секцията FILES на страниците за управление на командата.
Когато става дума за резултати, показани по подразбиране, командата whereis показва всичко, което намира, докато командата показва само първия изпълним файл, който намира. Можете да промените това с помощта на -а
вариант, обсъден по-рано, за коя команда.
Тъй като командата whereis използва само кодирани в командата команди, може да не намерите винаги това, което търсите. Ако търсите програма, която смятате, че може да бъде инсталирана в директория, която не е посочена в страниците на човека за командата whereis, може да искате да използвате коя команда с -а
възможност за намиране на всички възникнали команди в цялата система.