Penkios failų paieškos komandos „Linux“.

Penkios failų paieškos komandos „Linux“.

Įvadas

Linux sistemoje yra penkios failų paieškos komandos: whereis, locate, which, type, ir find. Kiekvienas iš jų turi savo ypatybes ir yra skirtas tam tikriems paieškos scenarijams. Šis vadovas supažindins jus su kiekviena komanda ir parodys naudojimo pavyzdžius. Norėdami daugiau sužinoti apie bet kurią iš šių komandų, geriausia peržiūrėti atitinkamą vadovo puslapį.

whereis

whereisKomanda naudojama paiešką dvejetainius failus, kodą ir internete vadovą puslapius ne kelių standarto įdiegti katalogų bet kurios programos pavadinimas nurodytą.

Kadangi whereisneieškoma visose jūsų sistemos vietose, failai iš šių konkrečių katalogų nebus rasti. Dėl tos pačios priežasties paieškos rezultatą gausite greitai, nesvarbu, ar rastas, ar ne.

Be to, jis neieškos tų komandų, kurios yra tiesiogiai įterptos į apvalkalą.

Pavyzdžiui, jei norite rasti informacijos apie lskomandą, savo terminale paleiskite šią komandą:

whereis ls

Gausite atsiliepimų, pavyzdžiui:

ls: /bin/ls /usr/share/man/man1/ls.1.gz /usr/share/man/man1p/ls.1p.gz

Rezultate /bin/lsyra dvejetainis failas, kurį norite rasti, kiti du yra lsprogramos puslapiai, programos šaltinio kodas lsnerastas.

Nukopijuokite /bin/lsfailą į savo namų katalogą ir į /usr/binkatalogą, tada whereisdar kartą paleiskite komandą:

cp /bin/ls ~
cp /bin/ls /usr/bin/ls
whereis ls

Kaip matote, paieškos rezultatuose buvo rasti tik /bin/lsir /usr/bin/ls. lsJūsų namų kataloge programa nebuvo rasta, nes jūsų namų kataloge nėra vienas iš tų, standartinis įdiegti katalogų.

ls: /bin/ls /usr/bin/ls /usr/share/man/man1/ls.1.gz /usr/share/man/man1p/ls.1p.gz

Jei paleisite šią komandą:

whereis cd

Pamatysite išvestį, panašią į toliau pateiktą eilutę. Nebuvo aptiktas dvejetainis failas, nes cdyra integruota apvalkalo komanda.

cd: /usr/share/man/man1/cd.1.gz /usr/share/man/man1p/cd.1p.gz

locate

locateKomanda naudojama ir siekiant rasti failus pagal pavadinimą su duomenų bazės pagalba ( /var/lib/mlocate/mlocate.db). Ši duomenų bazė iš esmės yra jūsų failų sistemos išdėstymo momentinė nuotrauka. Visi įrašai šioje duomenų bazėje, atitinkantys jūsų užklausą, bus pateikti paieškos rezultatuose. Pagal numatytuosius nustatymus locatekomanda naudos jūsų užklausą, kad atitiktų bet kurią viso įrašo pavadinimo dalį, įskaitant kelio pavadinimą. Todėl atitikusių failų skaičius paieškos rezultatuose gali būti didesnis nei tikėjotės.

Duomenų bazei pasenus, komandos paieškos rezultatas locatetampa ne toks tikslus. Galite pastebėti failus, kurių nebėra, arba nematysite naujai sukurtų failų atitikčių. Pagal numatytuosius nustatymus mlocate.dbduomenų bazė automatiškai atnaujinama kartą per dieną. Galite naudoti updatedbkomandą, kad ją atnaujintumėte rankiniu būdu.

Kadangi paieška atliekama duomenų bazėje, o ne failų sistemoje, paieškos greitis yra labai greitas.

Jei paleisite šią komandą:

locate ls

Vietoje laukiamo rezultato gausite daug įrašų.

Kad paieškos rezultatas būtų tikslesnis, galite naudoti -bvėliavėlę, kad apribotumėte paieškos diapazoną, naudodami užklausą, kad atitiktų tik pagrindinį kiekvieno įrašo pavadinimą:

locate -b "\ls"

Šį kartą gausite kiekvieno failo, kuris tiksliai vadinamas lsfailų sistemoje, vietą:

/bin/ls

which

whichKomanda ieškos komandą, kurią nurodėte į aplinkos kintamąjį vertės PATHir grįžti pirmąjį rezultatą pagal nutylėjimą. Jei užklausiate slapyvardžio, whichkomanda prieš atlikdama paiešką nustatys tikrąją slapyvardžio komandą.

whichKomanda taip pat labai greitai dėl savo paprastumo.

Komandos naudojimas whichyra paprastas:

which your_command

Jei norite rodyti visas suderintas komandas, o ne pirmąją, naudokite -avėliavėlę:

which -a your_command

Štai pavyzdys, kaip ieškoti komandos, kuriai buvo suteiktas slapyvardis:

which ll

Paieškos rezultatas būtų toks:

alias ll='ls -l --color=auto'
    /bin/ls

type

Pagal numatytuosius nustatymus typekomanda nurodys, kaip bus interpretuojamas komandos pavadinimas. Galimi rezultatai yra slapyvardis, raktinis žodis, funkcija, integruotas elementas arba failas. Kaip ir whereiskomanda, typekomanda ieškos tik keliuose standartiniuose diegimo kataloguose, kad atsakytų į jūsų užklausą.

Keletas skirtingų komandų įvedimo pavyzdžių:

Įdiegta apvalkalo komanda:

type cd

cd is a shell builtin

Dvejetainis failas failų sistemoje:

type sudo

sudo is /usr/bin/sudo

Pseudonimas:

type ls

ls is aliased to `ls --color=auto'

find

Tarp penkių šiame vadove pristatytų failų paieškos komandų ši findkomanda yra pati galingiausia. Jis taip pat yra lėčiausias. Skirtingai nuo kitų keturių komandų, findkomanda iš tikrųjų ieškos jūsų failo visoje failų sistemoje, po vieną i mazgą po vieno i mazgo. Naudodami findkomandą galite naudoti sudėtingus užklausos kriterijus, kad surastumėte kiekvieną reikalingą failą, netgi atliktumėte veiksmus su rastais failais.

Komandos paieškos kriterijai findyra pernelyg sudėtingi, kad juos būtų galima paaiškinti tokiame trumpame straipsnyje, čia pateikiami keli pavyzdžiai.

Pagrindinis komandos formatas find:

find [path] [option] [action]

Norėdami rasti visus failus darbiniame kataloge ir visuose jo pakatalogiuose:

find

Norėdami rasti failą, pavadintą aaajūsų namų kataloge ir visuose jo pakatalogiuose:

find ~ -name 'aaa'

Norėdami rasti visus failų sistemoje failus, kurie buvo modifikuoti per pastarąsias 24 valandas:

find / -mtime 0

Norėdami rasti visus žiniatinklio kataloge esančius failus ir visus jo pakatalogius, priklausančius vartotojui nginx:

find /usr/share/nginx/html/ -user nginx

Norėdami rasti visus darbiniame kataloge esančius failus, kurių leidimai yra 0744:

find -perm -0744

Norėdami rasti failą su pavadinimu aaadarbo kataloge ir pateikti išsamią jo informaciją:

find -name 'aaa' -exec ls -l {} \;

Kaip nustatyti neprižiūrimus atnaujinimus Debian 9 (Stretch)

Kaip nustatyti neprižiūrimus atnaujinimus Debian 9 (Stretch)

Naudojate kitą sistemą? Jei perkate Debian serverį, visada turėtumėte turėti naujausius saugos pataisymus ir naujinimus, nesvarbu, ar miegate, ar ne

Kaip įdiegti ir konfigūruoti PHP 7.0 arba PHP 7.1 Ubuntu 16.04

Kaip įdiegti ir konfigūruoti PHP 7.0 arba PHP 7.1 Ubuntu 16.04

PHP ir susiję paketai yra dažniausiai naudojami komponentai diegiant žiniatinklio serverį. Šiame straipsnyje sužinosime, kaip nustatyti PHP 7.0 arba PHP 7.1 o

Nustatykite savo DNS serverį Debian / Ubuntu

Nustatykite savo DNS serverį Debian / Ubuntu

Šiame vadove paaiškinama, kaip nustatyti DNS serverį naudojant Bind9 sistemoje Debian arba Ubuntu. Visame straipsnyje atitinkamai pakeiskite savo-domeno-vardas.com. Prie th

Nustatykite „Red5 Media Server“ Ubuntu 16.04

Nustatykite „Red5 Media Server“ Ubuntu 16.04

Naudojate kitą sistemą? „Red5“ yra atvirojo kodo medijos serveris, įdiegtas „Java“, leidžiantis paleisti „Flash“ kelių vartotojų programas, tokias kaip tiesioginis srautas.

Sukompiliuokite ir įdiekite „Nginx“ naudodami „PageSpeed“ modulį „Debian 8“.

Sukompiliuokite ir įdiekite „Nginx“ naudodami „PageSpeed“ modulį „Debian 8“.

Šiame straipsnyje pamatysime, kaip sukompiliuoti ir įdiegti pagrindinę Nginx liniją iš oficialių Nginx šaltinių naudojant PageSpeed ​​modulį, kuris leidžia

Kaip įdiegti „Vanilla Forum“ Ubuntu 16.04

Kaip įdiegti „Vanilla Forum“ Ubuntu 16.04

Naudojate kitą sistemą? Vanilla forumas yra atvirojo kodo forumo programa, parašyta PHP. Tai visiškai pritaikoma, paprasta naudoti ir palaiko išorinę

Kaip įdiegti „Kanboard“ Ubuntu 18.04 LTS

Kaip įdiegti „Kanboard“ Ubuntu 18.04 LTS

Naudojate kitą sistemą? Įvadas Kanboard yra nemokama atvirojo kodo projektų valdymo programinė įranga, skirta palengvinti ir vizualizuoti

Kaip įdiegti „Kanboard“ „Debian 9“.

Kaip įdiegti „Kanboard“ „Debian 9“.

Naudojate kitą sistemą? Įvadas Kanboard yra nemokama atvirojo kodo projektų valdymo programinė įranga, skirta palengvinti ir vizualizuoti

Kaip įdiegti Gitea Debian 9

Kaip įdiegti Gitea Debian 9

Naudojate kitą sistemą? Gitea yra alternatyvi atvirojo kodo, savarankiškai priglobta versijų valdymo sistema, kurią maitina Git. Gitea parašyta golangu ir yra

Kaip įdiegti „Gitea“ Ubuntu 18.04

Kaip įdiegti „Gitea“ Ubuntu 18.04

Naudojate kitą sistemą? Gitea yra alternatyvi atvirojo kodo, savarankiškai priglobta versijų valdymo sistema, kurią maitina git. Gitea parašyta golangu ir yra

Įdiekite „Lynis“ „Debian 8“.

Įdiekite „Lynis“ „Debian 8“.

Įvadas Lynis yra nemokama atvirojo kodo sistemos audito priemonė, kurią naudoja daugelis sistemų administratorių, kad patikrintų vientisumą ir sustiprintų savo sistemas. aš

Kaip įdiegti Thelia 2.3 Debian 9

Kaip įdiegti Thelia 2.3 Debian 9

Naudojate kitą sistemą? Thelia yra atvirojo kodo įrankis, skirtas kurti el. verslo svetaines ir valdyti PHP parašytą internetinį turinį. Thelia šaltinio kodas i

Kaip įdiegti „Microweber“ „CentOS 7“.

Kaip įdiegti „Microweber“ „CentOS 7“.

Naudojate kitą sistemą? „Microweber“ yra atvirojo kodo „drag and drop“ TVS ir internetinė parduotuvė. „Microweber“ šaltinio kodas yra „GitHub“. Šis vadovas jums parodys

„Microweber“ diegimas „Ubuntu 16.04“.

„Microweber“ diegimas „Ubuntu 16.04“.

Naudojate kitą sistemą? „Microweber“ yra atvirojo kodo „drag and drop“ TVS ir internetinė parduotuvė. „Microweber“ šaltinio kodas yra „GitHub“. Šis vadovas jums parodys

Kaip įdiegti dotCMS Ubuntu 16.04

Kaip įdiegti dotCMS Ubuntu 16.04

Naudojate kitą sistemą? DotCMS yra atvirojo kodo, įmonės lygio turinio valdymo sistema, parašyta Java. Jame yra beveik visos reikalingos funkcijos t

Kaip įdiegti „BigTree CMS“ Fedora 26 LAMP VPS

Kaip įdiegti „BigTree CMS“ Fedora 26 LAMP VPS

Naudojate kitą sistemą? BigTree CMS 4.2 yra greita ir lengva, nemokama ir atviro kodo, įmonės lygio turinio valdymo sistema (TVS), turinti platų

„Minecraft“ serverių tinklo sukūrimas naudojant „BungeeCord“ „Debian 8“, „Debian 9“ arba „CentOS 7“

„Minecraft“ serverių tinklo sukūrimas naudojant „BungeeCord“ „Debian 8“, „Debian 9“ arba „CentOS 7“

Ko jums reikia Vultr VPS su mažiausiai 1 GB RAM. SSH prieiga (su root / administratoriaus teisėmis). 1 veiksmas: „BungeeCord“ diegimas Pirmiausia

„Docker CE“ diegimas „Ubuntu 16.04“.

„Docker CE“ diegimas „Ubuntu 16.04“.

Naudojate kitą sistemą? Docker yra programa, leidžianti diegti programas, kurios vykdomos kaip konteineriai. Tai buvo parašyta populiarioje Go programoje

Kaip įdiegti Golang 1.8.3 CentOS 7, Ubuntu 16.04 ir Debian 9

Kaip įdiegti Golang 1.8.3 CentOS 7, Ubuntu 16.04 ir Debian 9

Golang yra programavimo kalba, kurią sukūrė Google. Dėl savo universalumo, paprastumo ir patikimumo Golangas tapo vienu populiariausių

„Dirty Cow Exploit“ pataisymas „CentOS“.

„Dirty Cow Exploit“ pataisymas „CentOS“.

Kas yra purvina karvė (CVE-2016-5195)? „Dirty Cow“ pažeidžiamumas išnaudojamas „Linux“ apdorojant kodą. Tai leidžia neprivilegijuotam vartotojui gai

Mašinų augimas: AI pritaikymas realiame pasaulyje

Mašinų augimas: AI pritaikymas realiame pasaulyje

Dirbtinis intelektas nėra ateityje, jis čia, dabartyje Šiame tinklaraštyje Skaitykite, kaip dirbtinio intelekto programos paveikė įvairius sektorius.

DDOS atakos: trumpa apžvalga

DDOS atakos: trumpa apžvalga

Ar taip pat esate DDOS atakų auka ir esate sumišęs dėl prevencijos metodų? Perskaitykite šį straipsnį, kad išspręstumėte savo užklausas.

Ar kada nors susimąstėte, kaip įsilaužėliai uždirba pinigų?

Ar kada nors susimąstėte, kaip įsilaužėliai uždirba pinigų?

Galbūt girdėjote, kad įsilaužėliai uždirba daug pinigų, bet ar kada susimąstėte, kaip jie uždirba tokius pinigus? padiskutuokime.

Revoliuciniai „Google“ išradimai, kurie palengvins jūsų gyvenimą.

Revoliuciniai „Google“ išradimai, kurie palengvins jūsų gyvenimą.

Ar norite pamatyti revoliucinius „Google“ išradimus ir kaip šie išradimai pakeitė kiekvieno žmogaus gyvenimą šiandien? Tada skaitykite tinklaraštį, kad pamatytumėte „Google“ išradimus.

Penktadienio esminiai dalykai: kas atsitiko AI varomiems automobiliams?

Penktadienio esminiai dalykai: kas atsitiko AI varomiems automobiliams?

Savavaledžių automobilių koncepcija, kuri išvažiuotų į kelius su dirbtinio intelekto pagalba, yra svajonė, kurią jau kurį laiką svajojame. Tačiau nepaisant kelių pažadų, jų niekur nematyti. Skaitykite šį tinklaraštį, kad sužinotumėte daugiau…

Technologinis išskirtinumas: tolima žmogaus civilizacijos ateitis?

Technologinis išskirtinumas: tolima žmogaus civilizacijos ateitis?

Kadangi mokslas sparčiai vystosi, perimdamas daug mūsų pastangų, taip pat didėja rizika, kad pateksime į nepaaiškinamą singuliarumą. Skaitykite, ką mums gali reikšti išskirtinumas.

Duomenų saugojimo raida – infografika

Duomenų saugojimo raida – infografika

Duomenų saugojimo metodai gali būti tobulinami nuo pat Duomenų gimimo. Šiame tinklaraštyje, remiantis infografika, aprašoma duomenų saugojimo raida.

Didžiųjų duomenų atskaitos architektūros sluoksnių funkcijos

Didžiųjų duomenų atskaitos architektūros sluoksnių funkcijos

Skaitykite tinklaraštį, kad paprasčiausiai sužinotumėte apie skirtingus didžiųjų duomenų architektūros sluoksnius ir jų funkcijas.

6 nuostabūs išmaniųjų namų įrenginių privalumai

6 nuostabūs išmaniųjų namų įrenginių privalumai

Šiame skaitmeniniu būdu pagrįstame pasaulyje išmanieji namų įrenginiai tapo svarbia gyvenimo dalimi. Štai keletas nuostabių išmaniųjų namų įrenginių privalumų, kaip jie daro mūsų gyvenimą vertą gyventi ir paprastesnį.

„macOS Catalina 10.15.4“ priedo atnaujinimas kelia daugiau problemų, nei sprendžia

„macOS Catalina 10.15.4“ priedo atnaujinimas kelia daugiau problemų, nei sprendžia

Neseniai „Apple“ išleido „macOS Catalina 10.15.4“ priedą, skirtą problemoms išspręsti, tačiau atrodo, kad dėl atnaujinimo kyla daugiau problemų, dėl kurių „Mac“ įrenginiai blokuojami. Norėdami sužinoti daugiau, perskaitykite šį straipsnį