Lengvai raskite failus iš komandinės eilutės sistemoje „Linux“.
Naudotojai paprastai bando rasti failą naudodami GUI. Tačiau kartais didžiulėje failų krūvoje jūsų sistemoje rasti atskirą failą tampa labai varginantis darbas. Tradiciškai jį rasti gali užtrukti daug laiko. Kad būtų lengviau atlikti šią užduotį, Linux siūlo tam tikras komandas, kurios atliks šį darbą už jus.
rasti
yra populiari komanda, naudojama Linux sistemose, kuri gali padėti ieškoti įvairių failų pagal jų pavadinimus, tipą, plėtinį, leidimus, savininką ir kt.
Šioje pamokoje daugiausia dėmesio skirsime failų paieškai pagal pavadinimą. Išnagrinėsime įvairius argumentus, kurie gali būti naudojami su rasti
komandą. Taip pat sužinosime apie surasti
komanda, kuri taip pat yra greitesnis būdas ieškoti failų pagal pavadinimą.
Sintaksė skirta rasti
komandą
Naudojant rasti
Tinkamas komandos nurodymas gali palengvinti jūsų užduotį. Rasti tam tikro tipo ar plėtinio failus arba ieškoti pagal pavadinimą bus įmanoma, jei gerai suprasite bendrąją šios komandos sintaksę.
Bendroji sintaksė rasti
komanda yra tokia.
rasti [paieškos_kelias] [išraiška] [parinktys] [rasti_ką]
Bandžiau supaprastinti sintaksę rasti
komandą, kad geriau suprastumėte komandą.
Pažvelkime į kiekvieną sintaksės atributą, kad suprastume kiekvieno iš jų reikšmę.
Search_Path: Čia pateikiamas kelias, kuriame nurodome kelią, nuo kurio norime, kad sistema pradėtų ieškoti failo. Trumpai tariant, yra nurodytas pradžios katalogas, kuriame reikia pradėti paiešką.
Išraiška: Galite nurodyti konkretaus ieškomo failo paieškos šablonus.
Galimybės: Galite naudoti galimas parinktis, naudojamas su rasti
komandą šioje erdvėje.
rasti_ką: Šiame atribute įveskite ieškomo failo pavadinimą arba pavadinimo dalį.
Iliustruojame šią komandą pavyzdžiu.
rasti /home/gaurav/workspace -name "source.c"
Šioje komandoje aš naudoju rasti
komanda ieškoti failo „source.c“. Specialiai paprašiau ieškoti kelyje „/home/gaurav/workspace“. Naudojant -vardas
parinktis leidžia man ieškoti failo, nurodyto „source.c“.
Tai paprasčiausias demonstravimas, kaip naudoti rasti
komandą.
Failų paieška dabartiniame kataloge
Naudojant rasti
Paprasčiausia komanda yra ieškoti failų dabartiniame darbo kataloge.
rasti.
Ši komanda parodys visus failus, esančius dabartiniame darbo kataloge. Čia „.
“ reiškia „dabartinį darbo katalogą“. Toliau pateikiama išvestis iš mano dabartinio darbo katalogo. Visi šiame kataloge esantys failai yra išvardyti be filtrų
Išvestis:
. ./context_log.policy ./snap ./snap/couchdb ./snap/couchdb/current ./snap/eclipse ./snap/eclipse/current ./snap/vim-editor ./snap/vim-editor/current ./ snap/vim-editor/common ./snap/vim-editor/1 ./snap/htop ./snap/htop/current ./snap/htop/common ./snap/htop/common/.local ./snap/htop /common/.local/lib ./snap/htop/common/.local/lib/locale ./snap/htop/common/.local/lib/locale/en_IN.UTF-8 ./snap/htop/common/. local/lib/locale/en_IN.UTF-8/LC_CTYPE
Norėdami ieškoti failo, kurio apytikslis pavadinimas žinomas, naudokite rasti
komandą, kaip parodyta žemiau.
rasti. -vardas [eilutė_iš_failo_pavadinimo\*]
Pavyzdys:
rasti. -pavadinimo kontekstas\*
Ši komanda ieško failų, kuriuose yra eilutė „kontekstas“.
Išvestis:
./context_log.policy ./context.xml ./context_preview.c
Visi dabartiniame kataloge esantys failai yra išvardyti, kuriuose yra eilutė „kontekstas“.
Dabar problema iškyla naudojant šią komandą, kai įvedant failo pavadinimą arba apytikslę eilutę bandote apsiriboti didžiųjų ir mažųjų raidžių jautrumu.
„Linux“ yra gana atsargus dėl didžiųjų ir mažųjų raidžių jautrumo, todėl yra didelė tikimybė, kad jūsų paieška gali nepavykti. Negausiu komandos rasti išvesties, jei eilutę naudosiu kaip „KONTEKSTAS“, o ne „kontekstas“. Net jei viena failo pavadinimo raidė yra kitokia nei pradinio failo pavadinimo raidė, paieška nepavyks.
Bet nereikia dėl to jaudintis. Galite tiesiog pakeisti -vardas
variantas su -vardas
. Tai leidžia ieškoti failų, neatsižvelgiant į jų pavadinimą. Tiesiog atlikite šį paprastą komandos pakeitimą ir viskas bus gerai.
rasti. -vardas CONT\*
Išvestis bus tokia pati, net jei eilutę naudoju didžiosiomis raidėmis.
./context_log.policy ./context.xml ./context_preview.c
Failų paieška skirtinguose kataloguose
Galite lengvai ieškoti failų bet kuriame „Linux“ sistemos kataloge, neatsižvelgiant į katalogą, kuriame šiuo metu dirbate.
rasti [katalogo_kelias] -vardas [konkretus_failo pavadinimas]
Pavyzdys:
rasti /home/gaurav/tomcat -name ath.html
Čia aš ieškojau konkretaus failo „ath.html“, o ne į šią eilutę panašių failų. Taigi išvestis bus tik konkretus failas, kaip minėta aukščiau.
/home/gaurav/tomcat/ath.html
Tarkime, kad nežinome viso failo pavadinimo, o tik šio failo pavadinimo eilutę. Tada galime ieškoti failų tokiu būdu.
rasti /home/gaurav/tomcat -name ath\*
Ši komanda ieškos visų failų, kurių pradžioje yra eilutė „ath“. Aš naudojau -vardas
čia, todėl man nereikia jaudintis dėl didžiųjų ir mažųjų raidžių jautrumo.
Išvestis:
/home/gaurav/tomcat/ATHENIAN_ART.html /home/gaurav/tomcat/ath_things.html /home/gaurav/tomcat/ath.html /home/gaurav/tomcat/ATHENIAN_ART.pdf /home/gaurav/tomcat/ATHHHHhow.html
Taip pat galite naudoti komandą norėdami ieškoti kelių failų, kurių pavadinimas baigiasi panašiu plėtiniu.
Pavyzdys:
rasti /home/gaurav/tomcat -vardas "*.c"
Komanda ieškos visų failų nurodytame kataloge, kurio failo pavadinime yra .c plėtinys.
Išvestis:
/home/gaurav/tomcat/stiil.c /home/gaurav/tomcat/project/temp.c /home/gaurav/tomcat/copy.c /home/gaurav/tomcat/gy.c
Sužinojome apie rasti
komanda ieškoti failų, nurodytų pagal failo pavadinimą. Dabar panagrinėkime dar vieną komandą, kuri yra greitesnė nei įprasta rasti
komandą.
surasti
komandų apžvalga
Yra dar viena komanda, skirta ieškoti failų jūsų sistemoje, kuri yra greitesnė nei rasti
komandą. Tai surasti
komandą. Ši komanda nėra iš anksto įdiegta Linux platinimuose. Norėdami atsisiųsti ir įdiegti, galite atlikti šiuos veiksmus surasti
komandų paketą į savo sistemą.
Ubuntu ir Debian sistemoms, naudokite:
sudo apt naujinimas sudo apt install mlocate
Cent Os ir Fedora sistemoms, naudokite:
sudo yum įdiegti mlocate
Komanda locate ieško failo pagal įvestyje nurodytą šabloną. surasti
naudoja duomenų bazės failą failų paieškai, šį duomenų bazės failą sugeneruoja atnaujintasb
komandą.
sudo atnaujinta
Laikas, kurio reikia šiam duomenų bazės failui atnaujinti, gali skirtis priklausomai nuo jūsų sistemoje esančių failų.
Naudojant surasti
komandą
Galite naudoti surasti
komandą tokiu būdu. Būtinai atnaujinkite duomenų bazės failą naudodami komandą sudo atnaujinta
.
Sintaksė:
rasti [failo_vardas_arba_failo_vardo_dalis]
Ši komanda pradės paiešką iš šakninio katalogo. Jis grąžins visų sistemoje esančių failų sąrašą, kuriame yra failo pavadinimas arba jo dalis, kaip nurodyta komandoje.
Pavyzdys:
rasti kopiją.c
Išvestis:
/home/gaurav/Downloads/git-2.23.0/copy.c /snap/core/9804/usr/lib/python3.5/__pycache__/copy.cpython-35.pyc /snap/core/9993/usr/lib /python3.5/__pycache__/copy.cpython-35.pyc /snap/core18/1880/usr/lib/python3.6/__pycache__/copy.cpython-36.pyc /snap/core18/1885/usr/lib/python3 .6/__pycache__/copy.cpython-36.pyc /snap/core20/634/usr/lib/python3.8/__pycache__/copy.cpython-38.pyc /usr/lib/python3.5/__pycache__/copy.cpyt -35.pyc /usr/lib/python3.6/__pycache__/copy.cpython-36.pyc /usr/share/icons/MacBuntu-OS/apps/128/copy.com.png
Paryškinta eilutė rodo, kad rastas tikslus failas „copy.c“. Kartu su šiuo rezultatu taip pat rodomi tam tikri kiti failai, kurių failo pavadinimo dalis yra „copy.c“.
Norėdami išvengti kitų nepageidaujamų failų netvarkos ir rasti tik norimą failą, galite naudoti komandą locate tokiu būdu.
surask -b '\failo pavadinimas'
Pavyzdys:
suraskite -b '\copy.c'
Išvestis:
/home/gaurav/Downloads/git-2.23.0/copy.c
Konkretus failas, minimas paieškos kriterijais, pateikiamas kartu su katalogo, kuriame jis yra, keliu.
Naudojant surasti
komanda gali atrodyti šiek tiek sudėtinga, tačiau tai greitesnis būdas ieškoti failų, kai nežinote tikslios to failo vietos. Failų gavimas tampa ypač greitas, kai atnaujinate duomenų bazės failą, kurį naudoja paieškos komanda.
Išvada
Šioje trumpoje pamokoje sužinojome apie dvi svarbias komandas, rasti
ir surasti
. Dabar galite lengvai ieškoti failų savo sistemoje nepasiklysdami failų šūsnyje. Šių komandų naudojimas tikrai padės sutaupyti laiko ir efektyviai atlikti failų paieškos užduotį.