3 начина за намиране на файлове в Linux

Съдържание:

3 начина за намиране на файлове в Linux
3 начина за намиране на файлове в Linux

Видео: 3 начина за намиране на файлове в Linux

Видео: 3 начина за намиране на файлове в Linux
Видео: Атеросклероз — 3 лучших метода избавления от недуга! 2024, Ноември
Anonim

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

Стъпка

Метод 1 от 3: Използване на „find“

690519 1
690519 1

Стъпка 1. Търсете файлове по име

Този тип търсене е най -основният и можете да направите това с командата find. Командата по -долу ще извърши търсене въз основа на думата, въведена в директорията, в която се намирате, както и на поддиректориите в нея.

find -iname "име на файл"

Ако използвате -iname вместо -name, разликата между главни и малки букви няма да има ефект. Командата -name счита главните и малките букви за различни знаци

690519 2
690519 2

Стъпка 2. Настройте търсенето да започне в основната директория

Ако искате да направите търсене в цялата система, можете да добавите / модификатора към ключовата дума. Модификаторът казва на командата find да търси старателно, като се започне от основната директория.

намери / -име "име на файл"

  • Можете да започнете търсене в конкретна директория, като замените /модификатора с пътя на директорията, например /home /pat.
  • Можеш да използваш. освен / така че търсенията да се извършват само в директорията, в която се намирате, а също и в поддиректориите в нея.
690519 3
690519 3

Стъпка 3. Използвайте заместващи знаци

* за търсене на всичко, което частично съвпада с ключовите Ви думи.

Знакът * може да се използва за намиране на файлове, чиито пълни имена не знаете, или ако искате да намерите всички файлове с конкретно разширение.

find /home /pat -iname "*.conf"

  • Горната команда ще върне всички.conf файлове в потребителската директория с име Pat (както и поддиректориите в нея).
  • Можете също да го използвате, за да намерите всичко, чието име частично съответства на тази ключова дума. Например, ако имате много документи, свързани с wikiHow, можете да ги намерите, като напишете „*wiki*“.
690519 4
690519 4

Стъпка 4. Улеснете управлението на резултатите от търсенето

Ако резултатите от търсенето са твърде много, ще ви бъде трудно да намерите желания от вас файл. Използвайте знака | и изпратете резултатите от търсенето обратно към програмата за филтриране "по -малко". По този начин можете да превъртате и филтрирате резултатите от търсенето по -лесно.

find /home /pat -iname "*.conf" | по-малко

690519 5
690519 5

Стъпка 5. Намерете резултати от търсенето с конкретен тип

Можете да използвате модификатори, за да върнете само определени типове резултати. Можете да търсите обикновени файлове (f), директории (d), символни връзки (l), символни устройства (в) и блокови устройства (б), като използвате подходящи модификатори.

find / -type f -iname "име на файл"

690519 6
690519 6

Стъпка 6. Филтрирайте резултатите от търсенето по размер

Ако имате много файлове с подобни имена, но знаете размера на файла, който искате, можете да филтрирате търсенето по размер.

намери / -размер +50M -име "име на файл"

  • Горната команда ще върне резултати от търсене на 50 мегабайта или повече. Можете да използвате + или - за търсене на файлове с по -голям или по -малък размер. Пропускането на знака + или - кара търсенето да връща само резултати с наистина "правилния" размер.
  • Можете да филтрирате търсенето по байтове (c), килобайти (k), мегабайти (M), гигабайти (G) или 512 байта (b) блокове. Имайте предвид, че маркировките правят разлика между главни и малки букви.
690519 7
690519 7

Стъпка 7. Използвайте логически оператори, за да комбинирате филтри за търсене

Можете да използвате операторите -and, -or и -not за комбиниране на различни търсения.

намери /пътувай снимки -тип f -размер +200k -не -име "*2015*"

Горната команда ще търси файлове в директорията „travelphotos“, които са с размер над 200 килобайта, но нямат думата „2015“в името си

690519 8
690519 8

Стъпка 8. Извършете търсене на файл по име на собственик или разрешение

Ако се опитвате да намерите конкретен файл, който принадлежи на конкретен потребител, или търсите файл с определени разрешения, можете да стесните търсенето.

find / -user pat -iname "име на файл" find / -grup потребители -iname "име на файл" find / -perm 777 -iname "име на файл"

Примерите по -горе ще извършат търсене за конкретен потребител, група или разрешение в рамките на ключова дума. Можете също да пропуснете името на файла, за да върнете всички файлове, които съответстват на този тип. Например, find / -perm 777 ще върне всички файлове с разрешения 777 (без ограничения)

690519 9
690519 9

Стъпка 9. Свържете командите, за да извършите действието, когато файлът е намерен

Можете да комбинирате командата find с други команди, така че да можете да обработвате файлове, върнати по ключова дума с тази команда. Разделете командата find и втората команда с флага -exec, след което завършете реда с {};

намирам. -тип f -перма 777 -exec chmod 755 {};

Горната команда ще търси във вашата директория (и всички поддиректории в нея) за файлове с разрешения 777. След това командата chmod ще промени разрешенията на 755

Метод 2 от 3: Използване на „locate“

690519 10
690519 10

Стъпка 1. Инсталирайте

намерете функционалност. Командата locate обикновено е по -бърза от командата find, поради използването на базата данни на вашата файлова система. Не всички видове Linux са оборудвани с функция за локализиране, затова въведете следната команда, за да я инсталирате:

  • Въведете sudo apt-get update, след което натиснете Enter.
  • Можете да го инсталирате на Debian и ubuntu по следния начин: Въведете sudo apt-get install mlocate, след което натиснете Enter. Ако функцията за локализиране е била инсталирана по -рано, ще видите съобщението mlocate вече е най -новата версия.
  • В Arch Linux използвайте мениджър на пакети pacman: pacman -Syu mlocate
  • За Gentoo използвайте emerge: emerge mlocate
690519 11
690519 11

Стъпка 2. Актуализиране

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

Въведете sudo updatedb, след което натиснете Enter

690519 12
690519 12

Стъпка 3. Използвайте

намерете за да извършите просто търсене.

Функцията locate работи бързо, но няма толкова опции, колкото командата find. Можете да извършвате основно търсене на файлове по начин, подобен на командата find.

намерете -i "*.jpg"

  • Горната команда ще търси в цялата система файлове с разширение.jpg. Заместващият знак * работи подобно на командата find.
  • Подобно на командата find, модификаторът -i също прави главни и малки букви в ключовите думи, считани за еднакви.
690519 13
690519 13

Стъпка 4. Ограничете резултатите от търсенето

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

намерете -n 20 -i "*.jpg"

  • Ще се покажат само 20 резултата от търсенето.
  • Можете също да използвате | за да изпратите резултатите от търсенето в програмата с по -малко филтри за по -лесно превъртане на резултатите.

Метод 3 от 3: Търсене на текст във файлове

690519 14
690519 14

Стъпка 1. Използвайте командата

греп за да намерите текстовия низ във файла.

Ако търсите файл, който съдържа конкретна фраза или символен низ, можете да използвате командата grep. Основната команда grep има следния формат:

grep -r -i "заявка за търсене"/път/към/директория/

  • Модификаторът -r прави търсенето "рекурсивно", така че ще бъде извършено търсене в директорията и всички поддиректории в нея, за да се намерят файлове, съдържащи текст с ключовата дума за търсене.
  • Модификаторът -i показва, че ключовата дума за търсене не прави разлика между главни и малки букви. Ако искате да принудите търсенето да прави разлика между главни и малки букви, игнорирайте модификатора -i.
690519 15
690519 15

Стъпка 2. Премахнете излишния текст

Когато правите греп търсене, както по -горе, ще видите името на файла със съответстващите букви маркирани. Можете да скриете съвпадащия текст и да покажете само името и пътя на файловата директория, като добавите:

grep -r -i "ключова дума за търсене"/път/към/директория/| изрежете -d: -f1

690519 16
690519 16

Стъпка 3. Скрийте съобщението за грешка

Командата grep ще върне грешка при опит за достъп до директория без съответните разрешения или при въвеждане на празна директория. Можете да изпращате съобщения за грешка на /dev /null, за да не се появяват.

grep -r -i "ключова дума за търсене"/път/до/директория/2>/dev/null

Препоръчано: