Въпреки че терминалът на Linux е текстов интерфейс, който изглежда сложен, той всъщност е много гъвкав, лесен за използване и доста полезен инструмент. Командите могат лесно да бъдат копирани от онлайн източници и поставени в терминала за извършване на различни операции. Има много команди, но тази публикация ще се фокусира върху командата find.
Командата find се използва за намиране, филтриране или търсене на файлове и папки във вашата система според зададени от потребителя условия и извършване на няколко операции върху тях.
Нека обсъдим как да използваме подробно командата find, нейния синтаксис и различни операции, изпълнявани от тази команда.
Синтаксис на командата find в Linux
Синтаксисът на командата find е показан по -долу:
намирам [път] [настроики] [израз]
Три атрибута вървят с командата find:
- [път]: Определя директорията, от която да започне търсенето.
- [опции]: Той определя критериите за филтриране, напр. търсене на файл/папка по негово име, разрешение, час или дата.
- [израз]: Той определя какви действия да се изпълняват с файла.
Всички горепосочени атрибути са незадължителни, тъй като могат да се използват според изискването.
За демонстрация създадох различни директории и някои текстови файлове, вижте изображението по -долу:
Намиране на файл по име
За да търсите във файла по име, използвайте дадената по-долу команда:
$намирам.-имеMyTextFile1.txt
Точката след намиране в горната команда показва текущата директория.
Ако не си спомняте точното име на файла, търсенето може допълнително да се прецизира и да се направи нечувствително към регистъра, като използвате -iname на мястото на името:
$намирам.-имеmytextfile1.txt
Намиране на файл по тип
За да намерите файл по неговия тип, използвайте опцията -type с букви, известни също като дескриптори като f за файлове, d за директории, l за символична връзка и s за гнезда.
За да търсите във всички директории, използвайте:
$намирам.-Типд
За да търсите файлове, използвайте:
$намирам.-Типе
Намиране на файл чрез разширение на файла
За да търсите във файла по модел, например разширение на файла, като например показване на всички файлове с .txt, използвайте следната команда:
$намирам.-име *.текст
Всички файлове с .txt ще бъдат показани заедно със съответните им директории.
Намиране и изтриване на файл
За да търсите и изтриете файл, използвайте командата по -долу:
$намирам.-имеmytextfile1.txt-exec rm {};
Горната команда първо търси файла и след това го изтрива. Изображението показва, че MyTextFile1 е изтрит.
За да изтриете всички файлове с разширение .txt, можете да използвате приложената команда:
$намирам.-име *.текст-Изтрий
Намиране на файл по размер
Командата find може също да търси файл по размер. Просто използвайте опцията -size заедно с нейните дескриптори като b за блокове от 512 Kb, c за байтове, k за килобайти, M и G съответно за мегабайти и гигабайти:
$намирам.-Типе-размер -1024c
Посочената по -горе команда търси във всички файлове с размер по -малък от 1024 байта. Търсенето може да бъде допълнително усъвършенствано, например, ако искаме да намерим всички файлове, които са по -малки от 1Mb, тогава използваме командата по -долу:
$намирам.-Типе-размер1 млн
За всички файлове, които са по -големи от 1Mb, използвайте командата по -долу:
$намирам.-Типе-размер+1М
Диапазон от размери също може да бъде дефиниран с помощта на приложената команда:
$намирам. -Типе-размер+1М-размер10 млнНамиране на файлове по разрешение
За да търсим файл по разрешение, ще използваме опцията -perm, след това кода на разрешението, както е показано по -долу:
$намирам.-пермания 664
Намерете текст в текстови файлове
За да намерите текст в множество текстови файлове във вашата система, използвайте дадената по -долу команда:
$намирам.-Типе-име *.текст-exec захващане'Здравейте'{};
Командата търси думата Hello в текстовите файлове. Изходът е текстови низове от текстовите файлове, съдържащи Hello.
Намиране на файл по дата и час на промяна
За достъп до файл по последната му промяна използвайте командата по -долу:
$намирам.-Типе-име *.текст-мин+10
Горната команда търси файл, последно променен преди четири минути, а m означава Промяната.
$намирам. -Типе-име *.текст-амин -10
Горната команда търси файл, последно достъпен преди 4 минути, а a in amin означава достъп. За достъп до файл, който е променен преди четири дни, използвайте -mtime +4 на мястото на mmin +4.
Заключение
Командата find в Linux е много полезна команда, която ви позволява да търсите файл или директория, използвайки различни критерии, и дори ви позволява да променяте файловете от терминала. В това ръководство наблюдавахме синтаксиса на командата find в Linux и научихме как да използваме командата find за изпълнение на различни функции.