Linux -da fayl tapmağın 3 yolu

Mündəricat:

Linux -da fayl tapmağın 3 yolu
Linux -da fayl tapmağın 3 yolu

Video: Linux -da fayl tapmağın 3 yolu

Video: Linux -da fayl tapmağın 3 yolu
Video: Kim nə başa düşdü ❓ 2024, Noyabr
Anonim

Necə olduğunu bilmirsinizsə, Linux sistemində fayl tapmaq çətin ola bilər. Linux -da fayl tapmağın ən yaxşı yolu bir neçə terminal əmrindən istifadə etməkdir. Bu əmrlərdən bəzilərini mənimsəmək, fayllar üzərində tam nəzarəti təmin edə bilər və digər əməliyyat sistemlərinin sadə axtarış funksiyalarından daha faydalıdır.

Addım

Metod 1 /3: "Tap" istifadə edin

690519 1
690519 1

Addım 1. Faylları ada görə axtarın

Bu növ axtarış ən əsasdır və bunu tap əmri ilə edə bilərsiniz. Aşağıdakı əmr, daxil olduğunuz qovluğa daxil edilmiş sözə və daxilindəki alt qovluqlara əsaslanaraq bir axtarış aparacaq.

tap "adı" fayl adı"

Name əvəzinə -iname istifadə etsəniz, böyük və kiçik hərfli açar sözlər arasındakı fərqin heç bir təsiri olmayacaq. -Name əmri böyük və kiçik hərfləri fərqli simvol hesab edir

690519 2
690519 2

Addım 2. Axtarışı kök qovluğundan başlayacaq şəkildə qurun

Sistem miqyasında bir axtarış etmək istəyirsinizsə, / dəyişdiricisini açar sözə əlavə edə bilərsiniz. Dəyişdirici tap əmrini kök qovluğundan başlayaraq hərtərəfli axtarmağı bildirir.

tapın / adı "fayl adı"

  • /Modifikatoru kataloq yolu ilə əvəz etməklə müəyyən bir qovluqda axtarışa başlaya bilərsiniz, məsələn /home /pat.
  • İstifadə edə bilərsən. Axtarışlar yalnız daxil olduğunuz qovluqda və bunun içindəki alt qovluqlarda aparılır.
690519 3
690519 3

Addım 3. Joker simvollardan istifadə edin

* açar sözlərinizə qismən uyğun gələn hər şeyi axtarmaq.

Joker * xarakteri, tam adlarını bilmədiyiniz faylları tapmaq üçün və ya xüsusi bir uzantısı olan bütün faylları tapmaq istəyirsinizsə istifadə edilə bilər.

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

  • Yuxarıdakı əmr, Pat adlı istifadəçi qovluğundakı bütün.conf fayllarını (həmçinin oradakı alt qovluqları) qaytaracaq.
  • Adı ilə həmin açar sözə qismən uyğun gələn hər şeyi tapmaq üçün də istifadə edə bilərsiniz. Məsələn, wikiHow ilə əlaqədar bir çox sənədiniz varsa, onları "*wiki*" yazaraq tapa bilərsiniz.
690519 4
690519 4

Addım 4. Axtarış nəticələrini idarə etməyi asanlaşdırın

Axtarış nəticələri çox olarsa, istədiyiniz faylı tapmaq çətin olacaq. | Simvolundan istifadə edin və axtarış nəticələrini "daha az" filtr proqramına geri göndərin. Bu yolla, axtarış nəticələrini daha asan gəzə və süzə bilərsiniz.

find /home /pat -iname "*.conf" | daha az

690519 5
690519 5

Addım 5. Xüsusi bir növ ilə axtarış nəticələrini tapın

Yalnız müəyyən növ nəticələr vermək üçün dəyişdiricilərdən istifadə edə bilərsiniz. Düzgün faylları (f), qovluqları (d), simvolik bağlantıları (l), xarakter cihazlarını (c) və blok cihazlarını (b) uyğun dəyişdiricilərdən istifadə edərək axtara bilərsiniz.

tap / -tipi f -adı "fayl adı"

690519 6
690519 6

Addım 6. Axtarış nəticələrini ölçüsünə görə süzün

Bənzər adları olan bir çox faylınız varsa, ancaq istədiyiniz faylın ölçüsünü bilirsinizsə, axtarışa görə ölçüsünə görə filtr edə bilərsiniz.

tap / ölçüsü +50M -adı "fayl adı"

  • Yuxarıdakı əmr 50 meqabayt və ya daha çox axtarış nəticələrini qaytaracaq. Daha böyük və ya kiçik ölçülü faylları axtarmaq üçün + və ya istifadə edə bilərsiniz. + Və ya - işarəsinin qoyulmaması, axtarışın yalnız "doğru" ölçü ilə nəticələnməsini təmin edir.
  • Axtarışı bayt (c), kilobayt (k), meqabayt (M), gigabayt (G) və ya 512 bayt (b) bloklara görə süzgəcdən keçirə bilərsiniz. İşarələrin böyük və kiçik hərfləri fərqləndirdiyini unutmayın.
690519 7
690519 7

Addım 7. Axtarış filtrlərini birləşdirmək üçün boolean operatorlardan istifadə edin

Fərqli axtarışları birləşdirmək üçün -and, -or və -not operatorlarından istifadə edə bilərsiniz.

tap /travelphotos -tip f -size +200k -nom deyil "*2015*"

Yuxarıdakı əmr, "travelphotos" qovluğunda ölçüsü 200 kilobaytdan çox olan, lakin adlarında "2015" sözü olmayan faylları axtaracaq

690519 8
690519 8

Addım 8. Sahib adı və ya icazəsi ilə fayl axtarışını aparın

Müəyyən bir istifadəçiyə aid olan müəyyən bir fayl tapmağa çalışırsınızsa və ya müəyyən icazələri olan bir fayl axtarırsınızsa, axtarışları daralda bilərsiniz.

tap / -kullanıcı pat -ınadı "fayl adı" tap / -qrup istifadəçiləri -inam "fayl adı" tap / -perm 777 -inam "fayl adı"

Yuxarıdakı nümunələr, bir söz içərisində müəyyən bir istifadəçi, qrup və ya icazə üçün bir axtarış həyata keçirəcəkdir. Bu tipə uyğun gələn bütün faylları qaytarmaq üçün fayl adını da ata bilərsiniz. Məsələn, tap / -perm 777, 777 icazəsi olan bütün faylları qaytaracaq (heç bir məhdudiyyət yoxdur)

690519 9
690519 9

Addım 9. Fayl tapıldıqda əmri yerinə yetirmək üçün əmrləri birləşdirin

Tapma əmrini digər əmrlərlə birləşdirə bilərsiniz ki, açar sözlə qaytarılmış faylları həmin komanda ilə işləyə biləsiniz. Tap -əmrini və ikinci əmri -exec bayrağı ilə ayırın, sonra sətri {} ilə bitirin;

tapmaq. -tip f -perm 777 -exec chmod 755 {};

Yuxarıdakı əmr, daxil olduğunuz qovluğu (və bütün alt kataloqu) 777 icazəsi olan faylları axtaracaq. Sonra chmod əmri icazələri 755 olaraq dəyişəcək

Metod 2 /3: "Tap" istifadə edin

690519 10
690519 10

Addım 1. Quraşdırın

tapın funksionallıq. Fayl sisteminizin verilənlər bazasından istifadə etməsi səbəbindən tapma əmri ümumiyyətlə tapma əmrindən daha sürətlidir. Bütün Linux növlərində tapma funksiyası yoxdur, buna görə də onu quraşdırmaq üçün aşağıdakı əmri daxil edin:

  • Sudo apt-get update yazın, sonra Enter düyməsini basın.
  • Debian və ubuntu-da belə qura bilərsiniz: sudo apt-get install mlocate yazın, sonra Enter düyməsini basın. Yer tapma funksiyası əvvəllər quraşdırılıbsa, mlocate mesajının artıq ən yeni versiyası olduğunu görəcəksiniz.
  • Arch Linux -da pacman paket menecerindən istifadə edin: pacman -Syu mlocate
  • Gentoo üçün emerge: emerge mlocate istifadə edin
690519 11
690519 11

Addım 2. Yeniləyin

tapın verilənlər bazası Sən. Tap əmri yaradılana və yenilənənə qədər heç nə tapa bilməyəcək. Proses ümumiyyətlə hər gün avtomatik olaraq edilir, ancaq əl ilə də yeniləyə bilərsiniz. Tapmaq funksiyasından mümkün qədər tez istifadə etmək istəyirsinizsə bunu etməlisiniz.

Sudo updatedb yazın, sonra Enter düyməsini basın

690519 12
690519 12

Addım 3.. İstifadə edin

tapın sadə bir axtarış aparmaq üçün.

Tapma funksiyası tez işləyir, lakin tap əmri qədər çox seçim yoxdur. Tapmaq əmrinə bənzər şəkildə əsas fayl axtarışlarını edə bilərsiniz.

-i "*.jpg" tapın

  • Yuxarıdakı əmr bütün sistemi-j.webp" />
  • Tap əmri kimi, -i dəyişdiricisi də açar sözlərdəki böyük və kiçik hərfləri eyni hesab edir.
690519 13
690519 13

Addım 4. Axtarış nəticələrini məhdudlaşdırın

Axtarışınız o qədər çox nəticə verərsə ki, onlardan istifadə etmək sizin üçün çətindir, bu nəticələri -n dəyişdirici ilə, sonra da geri qaytarmaq istədiyiniz nəticələrin sayını azalda bilərsiniz.

-n 20 -i "*.jpg" tapın

  • Yalnız 20 axtarış nəticəsi göstəriləcək.
  • | Də istifadə edə bilərsiniz nəticələrin daha asan sürüşməsi üçün axtarış nəticələrini daha az filtr proqramına göndərmək.

Metod 3 /3: Fayllarda mətn axtarın

690519 14
690519 14

Addım 1. Əmrdən istifadə edin

grep fayldakı mətn sətrini tapmaq üçün.

Xüsusi bir ifadə və ya simli olan bir fayl axtarırsınızsa, grep əmrindən istifadə edə bilərsiniz. Əsas grep əmri aşağıdakı formata malikdir:

grep -r -i "axtarış sorğusu"/path/to/directory/

  • -R dəyişdiricisi axtarışı "rekursiv" edir, buna görə də axtarış açar sözü olan mətni ehtiva edən faylları tapmaq üçün qovluqda və bütün alt qovluqlarda axtarış aparılacaq.
  • -İ dəyişdirici, axtarış açar sözünün böyük və kiçik hərfləri fərqləndirmədiyini göstərir. Axtarışı böyük və kiçik hərfləri fərqləndirməyə məcbur etmək istəyirsinizsə, -i dəyişdiricisini gözardı edin.
690519 15
690519 15

Addım 2. Artıq mətni silin

Yuxarıda göstərildiyi kimi bir grep axtarışı apararkən, uyğun gələn hərflərin olduğu fayl adını görəcəksiniz. Uyğun mətni gizlədə və əlavə edərək yalnız fayl qovluğunun adını və yolunu göstərə bilərsiniz:

grep -r -i "axtarış açar sözü"/yol//qovluğuna/| kəsilmiş -d: -f1

690519 16
690519 16

Addım 3. Səhv mesajını gizləyin

Müvafiq icazələr olmadan bir qovluğa daxil olmaq istəyərkən və ya boş bir qovluğa girərkən grep əmri bir səhv qaytaracaq. Səhv mesajlarını görünməməsi üçün /dev /null ünvanına göndərə bilərsiniz.

grep -r -i "search keyword"/path/to/directory/2>/dev/null

Tövsiyə: