Finn filene dine enkelt fra kommandolinjen i Linux
Brukere prøver vanligvis å finne en fil ved hjelp av GUI. Noen ganger blir det imidlertid en veldig kjedelig jobb å finne en individuell fil i den enorme haugen med filer på systemet ditt. Å finne det konvensjonelt kan være en tidkrevende oppgave. For å gjøre denne oppgaven enklere, tilbyr Linux visse kommandoer for å gjøre denne jobben for deg.
finne
er en populær kommando som brukes i Linux-systemene som kan hjelpe deg med å søke etter forskjellige filer basert på navn, type, utvidelse, tillatelser, eier, etc.
I denne opplæringen vil vi fokusere på å finne filene etter navn. Vi vil se på de forskjellige argumentene som kan brukes med finne
kommando. Vi vil også lære om Lokaliser
kommando som også er en raskere måte å søke etter filene etter navn.
Syntaks for finne
kommando
Bruker finne
kommando på en riktig måte kan gjøre oppgaven din enklere. Å finne filene av en bestemt type eller utvidelse eller søke etter navn vil være mulig hvis du forstår den generelle syntaksen til denne kommandoen godt.
Den generelle syntaksen for finne
kommandoen er som følger.
finn [søkebane] [uttrykk] [alternativer] [finn_hva]
Jeg har forsøkt å forenkle syntaksen til finne
kommando for å forstå kommandoen bedre.
La oss se på hver attributt til syntaksen for å få en ide om betydningen av hver av dem.
Search_Path: Her kommer banen der vi spesifiserer banen fra der vi ønsker at systemet skal begynne å søke etter filen. Kort sagt, startkatalogen for å starte søket er spesifisert.
Uttrykk: Du kan spesifisere søkemønstrene for den bestemte filen du søker.
Alternativer: Du kan bruke de tilgjengelige alternativene som brukes med finne
kommando i dette rommet.
finne hva: I dette attributtet legger du inn navnet eller en del av navnet på filen som skal søkes i.
La oss illustrere denne kommandoen med et eksempel.
finn /home/gaurav/workspace -navn "kilde.c"
I denne kommandoen bruker jeg finne
kommando for å søke etter filen "source.c". Jeg har bedt spesifikt om å søke i '/home/gaurav/workspace'-banen. Bruker -Navn
alternativet lar meg søke i filen spesifisert av 'source.c'.
Dette er den enkleste demonstrasjonen for bruk av finne
kommando.
Søker etter filer i gjeldende katalog
Bruker finne
kommandoen i sin enkleste form er å søke etter filene dine i din nåværende arbeidskatalog.
finne.
Denne kommandoen vil vise alle filene i din nåværende arbeidskatalog. Her er '.
' betyr den 'nåværende arbeidskatalogen'. Følgende er utdata fra min nåværende arbeidskatalog. Alle filene som finnes i denne katalogen er oppført uten noen filtre
Produksjon:
. ./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
For å søke etter en fil hvis omtrentlige navn er kjent, bruk finne
kommando som vist nedenfor.
finne. -navn [streng_fra_filnavn\*]
Eksempel:
finne. -navn kontekst\*
Denne kommandoen søker etter filene som inneholder strengen 'kontekst' i den.
Produksjon:
./context_log.policy ./context.xml ./context_preview.c
Alle filene i gjeldende katalog er oppført som inneholder strengen 'kontekst' i den.
Nå oppstår problemet med denne kommandoen når du prøver å ta deg friheten til sensitiviteten til store og små bokstaver mens du skriver inn filnavnet eller den omtrentlige strengen.
Linux er ganske forsiktig med hensyn til store og små bokstaver, og derfor er det en god sjanse for at søket ditt kan mislykkes. Jeg vil ikke få utdata for find-kommandoen hvis jeg bruker strengen som 'CONTEXT' i stedet for 'context'. Selv om en enkelt bokstav i filnavnet er i et annet tilfelle enn det opprinnelige filnavnet, vil søket mislykkes.
Men ingen grunn til å bekymre deg for det. Du kan ganske enkelt erstatte -Navn
alternativet med -Jeg navngir
. Dette lar deg søke etter filene uavhengig av tilfellene de heter i. Bare gjør denne enkle endringen i kommandoen din, så går det bra.
finne. -iname CONT\*
Utgangen vil være den samme, selv om jeg har brukt strengen med stor bokstav.
./context_log.policy ./context.xml ./context_preview.c
Søke filer i forskjellige kataloger
Du kan enkelt søke etter filene i hvilken som helst katalog på Linux-systemet, uavhengig av katalogen du jobber i.
finn [katalogbane] -iname [spesifikt_filnavn]
Eksempel:
finn /home/gaurav/tomcat -iname ath.html
Her har jeg søkt etter en spesifikk fil 'ath.html' og ikke etter lignende filer som denne strengen. Så utdataene vil bare være den spesifikke filen som nevnt ovenfor.
/home/gaurav/tomcat/ath.html
Anta nå at vi ikke kjenner det fullstendige filnavnet, men bare strengen til dette filnavnet. Deretter kan vi søke i filene på følgende måte.
finn /home/gaurav/tomcat -iname ath\*
Denne kommandoen vil søke etter alle filene som inkluderer strengen 'ath' i begynnelsen. Jeg har brukt -Jeg navngir
alternativet her, så jeg trenger ikke å bekymre meg for sakssensitiviteten.
Produksjon:
/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
Du kan også bruke kommandoen til å søke i flere filer som ender med en lignende utvidelse i navnet.
Eksempel:
finn /home/gaurav/tomcat -iname "*.c"
Kommandoen vil søke etter alle filene i den angitte katalogen som inneholder .c som en utvidelse i filnavnet.
Produksjon:
/home/gaurav/tomcat/stiil.c /home/gaurav/tomcat/project/temp.c /home/gaurav/tomcat/copy.c /home/gaurav/tomcat/gy.c
Vi lærte om finne
kommando for å søke etter filene spesifisert av filnavnet. La oss nå utforske en kommando til som er raskere enn den konvensjonelle finne
kommando.
Lokaliser
kommandooversikt
Det er en kommando til for å søke etter filene på systemet ditt, som er raskere enn finne
kommando. Det er Lokaliser
kommando. Denne kommandoen kommer ikke forhåndsinstallert på Linux-distribusjonene. Du kan bruke følgende trinn for å laste ned og installere Lokaliser
kommandopakken på systemet ditt.
For Ubuntu- og Debian-systemer, bruk:
sudo apt-oppdatering sudo apt installer mlocate
For Cent Os og Fedora-systemer, bruk:
sudo yum installer mlocate
Lokaliseringskommandoen søker etter filen i henhold til det gitte mønsteret i inngangen. Lokaliser
bruker databasefilen til å søke etter filene, denne databasefilen genereres av oppdatertb
kommando.
sudo oppdatertb
Tiden det tar å oppdatere denne databasefilen kan variere fra bruker til bruker avhengig av filene på systemet ditt.
Bruker Lokaliser
kommando
Du kan bruke Lokaliser
kommando på følgende måte. Sørg for å oppdatere databasefilen ved å bruke kommandoen sudo oppdatertb
.
Syntaks:
finn [filnavn_eller_del_av_filnavn]
Denne kommandoen vil starte søket fra rotkatalogen. Den vil returnere listen over alle filene på systemet som inneholder filnavnet eller en del av filnavnet som spesifisert i kommandoen.
Eksempel:
finn copy.c
Produksjon:
/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.cpython -35.pyc /usr/lib/python3.6/__pycache__/copy.cpython-36.pyc /usr/share/icons/MacBuntu-OS/apps/128/copy.com.png
Den uthevede linjen viser at den eksakte filen 'copy.c' er funnet. Sammen med dette resultatet vises også visse andre filer som inneholder 'copy.c' som en del av filnavnet.
For å unngå rotet av andre uønskede filer og bare finne ønsket fil, kan du bruke locate-kommandoen på følgende måte.
finn -b '\filnavn'
Eksempel:
finn -b '\copy.c'
Produksjon:
/home/gaurav/Downloads/git-2.23.0/copy.c
Den spesifikke filen nevnt i søkekriteriene er oppført sammen med banen til katalogen der den ligger.
Bruker Lokaliser
kommandoen kan virke litt vanskelig, men er en raskere metode for å søke etter filer når du ikke vet den nøyaktige plasseringen til filen. Henting av filene blir superrask når du har oppdatert databasefilen som locate-kommandoen bruker.
Konklusjon
I denne korte opplæringen lærte vi om to viktige kommandoer, finne
og Lokaliser
. Nå kan du enkelt søke etter filer på systemet uten å gå deg vill i stabelen med filer. Å bruke disse kommandoene vil sikkert vise seg å være tidsbesparende og effektivt for oppgaven din for å søke etter filer.