Linuxda find buyrug'idan foydalanish misollari

Linux yadrosi operatsion tizimlari uchun mashhur fayl menejerlarining aksariyati juda funktsional qidirish vositasiga ega. Biroq, uning tarkibidagi variantlar har doim ham foydalanuvchi uchun kerakli ma'lumotlarni topishi uchun etarli emas. Bunday holda, orqali ishlaydigan standart yordamchi dastur "Terminal".. Buyruq, dalil va variantni kiritish orqali kerakli ma'lumotlarni katalogdan yoki butun tizimdan osongina topishga imkon beradi.

Linuxda find buyrug'idan foydalanish

Buyruq encontrar u har xil ob'ektlarni, shu jumladan istalgan formatdagi fayllarni va turli chuqurlikdagi kataloglarni qidirish uchun mo'ljallangan. Foydalanuvchi faqat buyruqni o'zi kiritishi, qidirish uchun qiymatni ko'rsatishi va filtrlash parametrlarini o'rnatish uchun argumentlarni tayinlashi kerak. Yordamchi dastur tomonidan amalga oshiriladigan protsedura odatda ko'p vaqt talab qilmaydi, ammo baribir skaner qilinadigan ma'lumotlarning hajmiga bog'liq. Keling, qanday foydalanish haqida bir nechta misollarni ko'rib chiqamiz encontrar batafsil ma'lumot.

Konsol orqali katalogga o'ting

Boshlash uchun men asosiy buyruqdan bir oz chetga chiqmoqchiman va konsoldan boshqarish paytida kelajakda yordam beradigan qo'shimcha harakatlarga tegmoqchiman. Gap shundaki, Linux tarqatish dasturlari kompyuteringizda hamma narsani qidirish uchun mo'ljallanmagan. Barcha jarayonlar faqat elementlarning to'liq manzilini ko'rsatgan holda ishga tushirilishi yoki buyruq orqali joyga o'tish kerak cd. Buni osonlikcha bajarish mumkin:

  1. O'rnatilgan fayl menejerini oching va kelajakda buyruqni ishlatmoqchi bo'lgan kerakli papkaga o'ting encontrar.
  2. Har qanday ob'ektda PCM-ni bosing va elementni toping "Xususiyatlar"..
  3. Siz o'zingizning asosiy papkangizni to'liq ro'yxat bilan ko'rasiz. Navigatsiya qilish uchun uni yodlang "Terminal"..
  4. Endi konsolni ishga tushiring, masalan menyu orqali.
  5. U erda buyruq yozing. cd /home/user/folderqaerda foydalanuvchi - foydalanuvchining uy papkasining nomi va papka - bu kerakli katalogning nomi.

Agar faollashtirishdan oldin bo'lsa encontrarYuqoridagi bayonotni bajarishda, tanlangan joyda ekan, faylning to'liq yo'lini yozmaslik mumkin. Ushbu yechim kelajakda buyruq kiritishni sezilarli darajada tezlashtiradi.

Joriy katalogdagi fayllarni qidirish

Yugurganingizda. find Siz hozirgina ishlagan konsolda faol foydalanuvchi ildiz katalogida qidiruv natijasini olasiz. Aks holda, masalan, joylashuv bo'yicha qidirish paytida faollashganda, ushbu joyda joylashgan barcha pastki papkalar va fayllar natijalarda ko'rinadi.

Faollashtirish encontrar bir vaqtning o'zida barcha elementlarni qidirish zarur bo'lganda hech qanday argument yoki variant ishlatilmaydi. Agar sizning ismlaringiz chiziqlarga to'liq mos kelmasa, unga o'xshash bo'lishi uchun buyruqni o'zgartirishga arziydi find . -print.

Belgilangan katalogdagi fayllarni qidiring

Belgilangan yo'l orqali fayllarni ko'rsatish buyrug'i biz yuqorida aytib o'tganimiz bilan deyarli bir xil. Siz ham yozishingiz kerak findva keyin qo'shing ./folderagar siz katalog ma'lumotlarini joriy joyda bilmoqchi bo'lsangiz yoki masalan, yozish orqali to'liq yo'lni belgilashingiz kerak bo'lsa find ./home/user/downloads/folderqaerda papka - yakuniy katalog. Har bir element chuqurligi bo'yicha alohida satr sifatida chiqariladi.

Nom bo'yicha qidirish

Ba'zan faqat nom bilan qanoatlantiradigan narsalarni ko'rsatish kerak bo'ladi. Keyin foydalanuvchi buyruq uchun mos variantni ko'rsatishi kerak, shunda buyruq havolani tushunadi. Kirish liniyasi quyidagicha bo'ladi: find . -name "word"qaerda so'z - Qidiruv kalit so'zi, u ikkita tirnoq ichida bo'lishi kerak va har bir belgi uchun katta-kichikligi sezgir.

Agar siz har bir harfning katta va kichik harflarini aniq bilmasangiz yoki ushbu parametrdan qat'iy nazar barcha mos keladigan nomlarni ko'rsatishni xohlasangiz, kiriting find . -iname "word".

Natijalarni argumentga kalit so'zlar bo'yicha filtrlash -Nom yana bittasi qo'shiladi. Buyruq find . -not -name "word"qaerda so'z - chiqarib tashlanadigan so'z.

Ba'zan boshqalarni chiqarib tashlagan holda, bitta tugmachada ob'ektlarni topish kerak bo'ladi. Keyinchalik, bir nechta qidiruv parametrlari birma-bir tayinlanadi va kirish satri quyidagicha: find . -name "word" -not name "*.txt". E'tibor bering, ikkinchi argumentda qo'shtirnoq ichida » bor* .txt "bu degani encontrar U nafaqat nomlar bilan, balki shu tarzda o'rnatilgan fayl formatlari bilan ham ishlaydi.

Shuningdek, operator mavjud O. Bir vaqtning o'zida bir yoki bir nechta mos keladigan dalillarni topishga imkon beradi. Bir vaqtning o'zida tegishli dalillarni qo'shib, ularning har biri alohida ko'rsatiladi. Natija taxminan quyidagicha: find -name "word" -o -name "word1".

Qidiruv chuqurligini belgilash

Buyruq encontrar shuningdek, foydalanuvchi kataloglar tarkibini faqat ma'lum bir chuqurlikda topishi kerak bo'lganda yordam beradi, masalan, u uchinchi pastki papkada skanerlashi shart emas. Ushbu cheklovlarni o'rnatish uchun yozing find . -maxdepth N -name "word"qaerda N - maksimal chuqurlik va - "so'z" nomi - Keyingi har qanday dalillar.

Bir nechta kataloglardan qidirish

Ko'pgina kataloglar bir vaqtning o'zida turli xil tarkibdagi bir nechta papkalarni o'z ichiga oladi. Agar ularning soni juda ko'p bo'lsa va siz faqat bir nechtasini qidirmoqchi bo'lsangiz, unda buyruqni kiritishda uni ko'rsatishingiz kerak bo'ladi find ./folder ./folder1 -type f -name "word"qaerda ./ papka ./ papka1 - tegishli kataloglar ro'yxati va - "so'z" nomi - boshqa dalillar.

Yashirin narsalarni ko'rish

Agar tegishli argument ko'rsatilmagan bo'lsa, skanerlangan kataloglarda joylashgan yashirin narsalar konsolda ko'rsatilmaydi. Shunday qilib, foydalanuvchi buyruq quyidagi tarzda tugashi uchun qo'shimcha variantni qo'lda yozadi: find ~ -type f -name ".*". Siz barcha fayllarning to'liq ro'yxatini olasiz, ammo agar ulardan ba'zilari mavjud bo'lmasa, so'zdan oldin encontrar satrda, yozing sudosuperuser huquqlarini faollashtirish uchun.

Foydalanuvchi va guruh uy papkalarini skanerlash

Har bir foydalanuvchi turli joylarda cheksiz ko'p katalog va ob'ektlarni yaratishi mumkin. Foydalanuvchiga tegishli ma'lumotlarni topishning eng tezkor usuli bu buyruqdan foydalanishdir encontrar va uning dalillaridan biri. V Terminus. kalit find . -user usernameqaerda foydalanuvchi nomi - Foydalanuvchi nomi. Kiritilganidan so'ng, skanerlash avtomatik ravishda boshlanadi.

Taxminan bir xil sxema foydalanuvchi guruhlari bilan ishlaydi. Guruhlardan biri bilan bog'langan fayllar tomonidan tahlil qilinadi find /var/www -group groupname. Shuni yodda tutingki, juda ko'p narsalar bo'lishi mumkin va ba'zida ularning barchasini chiqarish uchun ko'p vaqt ketadi.

O'zgartirish sanasi bo'yicha filtrlangan

Operatsion tizim mavjud bo'lgan har bir faylning o'zgartirish sanasi haqidagi ma'lumotlarni avtomatik ravishda saqlaydi. Buyruq encontrar barchasini ko'rsatilgan parametr bo'yicha topishga imkon beradi. Siz yozishingiz kerak bo'lgan yagona narsa sudo find / -mtime Nqaerda N - Ob'ekt oxirgi marta o'zgartirilgan kunlar soni. Prefiks sudo bu erda faqat super foydalanuvchilar uchun ham fayllar haqida ma'lumot olish uchun kerak.

Agar siz so'nggi bir necha kun oldin ochilgan maqolalarni ko'rishni xohlasangiz, satr biroz o'zgaradi sudo find / -atime N.

Fayl hajmi bo'yicha filtrlangan

Har bir ob'ekt o'z o'lchamiga ega, shuning uchun fayllarni qidirish buyrug'i ularni ushbu parametr bo'yicha filtrlashga imkon beradigan funktsiyaga ega bo'lishi kerak. encontrar buni amalga oshirishi mumkin, foydalanuvchi o'lchovni o'zi argument orqali belgilashi kerak. Faqat yozing find / -size Nqaerda N - hajm bayt, megabayt (M) yoki gigabayt (G).

Shuningdek, qidirish uchun bir qator narsalarni belgilashingiz mumkin. Keyin aniqlovchilar buyruqqa kiritiladi va quyidagi qator olinadi, masalan: find / -size +500M -size -1000M. Ushbu skanerlashda 500 megabaytdan kattaroq, ammo 1000 dan kam fayllar ko'rsatiladi.

Bo'sh fayllar va kataloglarni qidirish

Ba'zi fayllar yoki papkalar bo'sh ko'rinadi. Ular shunchaki keraksiz disk maydonini egallaydi va ba'zida sizning kompyuteringiz bilan to'g'ri ishlashingizga to'sqinlik qiladi. Keyinchalik nima qilish kerakligini hal qilish uchun ularni topishingiz kerak va bu erda find /folder -type f -emptyqaerda / bog'lovchi - ekspertiza o'tkaziladigan joy.

Boshqa tomondan, foydalanuvchi uchun vaqti-vaqti bilan foydali bo'ladigan boshqa foydali dalillarni qisqacha eslatib o'tmoqchiman:

  • -mount - Faqat joriy fayl tizimiga cheklov;
  • -type f - faqat fayllarni ko'rsatish;
  • -type d - faqat kataloglarni ko'rsatish;
  • -nogroup, -nouser - biron bir guruhga tegishli bo'lmagan yoki foydalanuvchiga tegishli bo'lmagan fayllarni qidiradi;
  • -version - ishlatilayotgan yordam dasturining versiyasini bilib oling.

Bu buyruqning kiritilishi encontrar to'liq. Agar siz Linux yadrosi operatsion tizimidagi boshqa standart konsol vositalarini batafsil o'rganishni istasangiz, quyidagi havolada alohida materialimiz bilan tanishishingizni tavsiya qilamiz.

Ko'proq o'qing: Linux "Terminal" da tez -tez ishlatiladigan buyruqlar.

Kerakli ma'lumotlarni qidirib topgandan so'ng, ular bilan tarkibni tahrirlash, o'chirish yoki ko'rib chiqish kabi har qanday boshqa harakatlarni amalga oshirishingiz mumkin. Bu borada boshqa o'rnatilgan kommunal xizmatlar yordam berishi mumkin "Terminal".. Quyida ulardan foydalanish misollarini topasiz.

Shuningdek o'qing: Linuxdagi grep / cat / ls buyruqlariga misollar

Muammoni hal qilishda sizga yordam bera olganimizdan xursandmiz.

Siz uchun nima ishlamaganligini tasvirlab bering.
Bizning mutaxassislarimiz imkon qadar tezroq javob berishga harakat qilishadi.

Ushbu maqola sizga yordam berdimi?