Slik finner du filer og mapper i Linux ved hjelp av kommandolinjen
De fleste bruker en grafisk filbehandling til å finne filer på Linux, for eksempel Nautilus i Gnome, Dolphin i KDE og Thunar i Xfce. Det er imidlertid flere måter å bruke kommandolinjen til å finne filer på Linux, uansett hvilken skrivebordssjef du bruker.
Bruke Finn kommandoen
"Find" -kommandoen lar deg søke etter filer som du kjenner til omtrentlige filnavn. Den enkleste form for kommandoen søker etter filer i gjeldende katalog og rekursivt gjennom dets underkataloger som samsvarer med de medfølgende søkekriteriene. Du kan søke etter filer etter navn, eier, gruppe, type, tillatelser, dato og andre kriterier.
Hvis du skriver følgende kommando ved spørringen, vises alle filene som finnes i den nåværende katalogen.
finne .
Punktet etter "finne" indikerer gjeldende katalog.
For å finne filer som samsvarer med et bestemt mønster, bruk -Navn
argument. Du kan bruke filnavn metakaracters (for eksempel *
), men du bør enten sette en flukt karakter ( \
) foran hver av dem eller vedlegg dem i anførselstegn.
Hvis vi for eksempel vil finne alle filene som starter med "pro" i dokumentmappen, vil vi bruke cd Dokumenter /
kommandoen for å bytte til Dokumenter-katalogen, og skriv deretter inn følgende kommando:
finn. -navn pro \ *
Alle filer i den nåværende katalogen som starter med "pro" er oppført.
MERK: Finne kommandoen er som standard bokstavsfølsom. Hvis du vil at søket etter et ord eller en setning skal være uaktsom, bruk -Jeg navngir
alternativ med finn kommandoen. Det er tilfelle ufølsom versjon av -Navn
kommando.
Hvis finne
finner ikke noen filer som samsvarer med kriteriene dine, det gir ingen utgang.
Finne kommandoen har mange alternativer tilgjengelig for å forbedre søket. For mer informasjon om finne-kommandoen, kjør mann finner
i et terminalvindu og trykk på Enter.
Bruke Locate Command
Locate-kommandoen er raskere enn finne-kommandoen fordi den bruker en tidligere bygget database, mens finnkommandoen søker i det virkelige systemet gjennom alle de faktiske katalogene og filene. Locate-kommandoen returnerer en liste over alle banenavn som inneholder den angitte gruppen av tegn.
Databasen oppdateres jevnlig fra cron, men du kan også oppdatere det selv når som helst slik at du kan få resultater opp til minuttet. For å gjøre dette, skriv følgende kommando ved spørringen:
sudo updatedb
Skriv inn passordet ditt når du blir bedt om det.
Den grunnleggende formen for lokalkommandoen finner alle filene på filsystemet, som starter ved roten, som inneholder hele eller deler av søkekriteriene.
finn mydata
For eksempel fant kommandoen ovenfor to filer som inneholder "mydata" og en fil som inneholder "data".
Hvis du vil finne alle filer eller kataloger som inneholder nøyaktig og bare søkekriteriene dine, bruker du -b
alternativet med lokaliseringskommandoen, som følger.
finn -b '\ mydata'
Bakslaget i kommandoen ovenfor er et globbing-tegn, som gir en måte å utvide wildcard-tegn i et ikke-spesifikt filnavn i et sett med bestemte filnavn. Et jokertegn er et symbol som kan erstattes av ett eller flere tegn når uttrykket er evaluert. De vanligste jokertegnene er spørsmålet ( ?
), som står for et enkelt tegn og stjernen ( *
), som står for en sammenhengende streng av tegn. I det ovennevnte eksemplet deaktiverer backslash den implisitte erstatning av "mydata" med "* mydata *" slik at du ender opp med bare resultater som inneholder "mydata".
Kommandoen mlocate er en ny implementering av lokalisering. Det indekserer hele filsystemet, men søkeresultatene inneholder bare filer som den nåværende brukeren har tilgang til. Når du oppdaterer mlocate-databasen, holder den tidsstempelinformasjonen i databasen. Dette gjør det mulig å vite om innholdet i en katalog endret uten å lese innholdet igjen og gjør oppdateringer til databasen raskere og mindre krevende på harddisken din.
Når du installerer mlocate, endres / usr / bin / locate binærfilen for å peke til mlocate. For å installere mlocate, skriv den følgende kommandoen ved spørringen hvis den ikke allerede er inkludert i Linux-distribusjonen din.
sudo apt-get install mlocate
MERK: Vi vil vise deg en kommando senere i denne artikkelen som lar deg bestemme hvor kjørbar for en kommando er plassert, hvis den eksisterer.
Kommandoen mlocate bruker ikke den samme databasefilen som standard lokalkommandoen. Derfor kan du opprette databasen manuelt ved å skrive følgende kommando ved spørringen:
sudo /etc/cron.daily/mlocate
Kommandoen mlocate vil ikke fungere før databasen er opprettet enten manuelt eller når skriptet kjøres fra cron.
For mer informasjon om enten kommandoen lokalisere eller mlocate, skriv inn mann finne
eller mann mlocate
i et terminalvindu og trykk på Enter. Den samme hjelpeskjermen vises for begge kommandoene.
Bruke hvilken kommando
Kommandoen "som" returnerer den absolutte banen til kjørbarheten som kalles når en kommando er utstedt. Dette er nyttig for å finne plasseringen av en kjørbar for å opprette en snarvei til programmet på skrivebordet, på et panel eller et annet sted i skrivebordsstyreren. For eksempel skriver du kommandoen hvilken firefox
viser resultatene som vises i bildet nedenfor.
Som standard viser den kommandoen bare den første samsvarende kjørbare. For å vise alle matchende kjørbare, bruk -en
alternativ med kommandoen:
som-en firefox
Du kan søke etter flere kjørbare filer på en gang, som vist i bildet nedenfor. Bare stier til kjørbare filer vises. I eksemplet nedenfor ble bare "ps" kjørbar funnet.
MERK: Hvilken kommando søker bare den nåværende brukerens PATH-variabel. Hvis du søker etter en kjørbar fil som bare er tilgjengelig for roten brukeren som en vanlig bruker, vises ingen resultater.
For mer informasjon om hvilken kommando, skriv "mann som" (uten anførselstegn) på ledeteksten i et Terminal-vindu og trykk Enter.
Bruke kommandoen der
Varsel-kommandoen brukes til å finne ut hvor binær-, kilde- og mannsidefiler for en kommando er plassert. For eksempel skriver du inn hvor er firefox
Ved spørringen vises resultater som vist i det følgende bildet.
Hvis du bare vil ha banen til den kjørbare som skal vises, og ikke stiene til kilden og mannen (ual) -sidene, bruk -b
alternativ. For eksempel, kommandoen hvor-b firefox
vil bare vise / Usr / bin / firefox
som resultatet. Dette er nyttig fordi du mest sannsynlig søker etter et programs kjørbare fil oftere enn du ville søke etter kilde- og manssider for det programmet. Du kan også søke etter bare kildefilene ( -s
) eller for bare man-sidene ( -m
).
For mer informasjon om varis kommandoen, skriv inn mann der
i et terminalvindu og trykk på Enter.
Forstå forskjellen mellom Command og Command
Varselkommandoen viser deg plasseringen for binær-, kilde- og mannssider for en kommando, mens den kommandoen bare viser deg plasseringen av binæret for kommandoen.
Varselkommandoen søker gjennom en liste over bestemte kataloger for binær-, kilde- og mannsfiler mens den kommandoen søker i katalogene som er oppført i den nåværende brukerens PATH-miljøvariabel. For varis-kommandoen kan listen over bestemte kataloger finnes i FILES-delen av mannsidene for kommandoen.
Når det gjelder resultater som vises som standard, viser kommandoen hvor alt er funnet, mens den kommandoen bare viser den første kjørbare den finner. Du kan endre det ved å bruke -en
alternativ, diskutert tidligere, for hvilken kommando.
Fordi varis kommandoen bare bruker stier hardkodet i kommandoen, kan du ikke alltid finne det du leter etter. Hvis du søker etter et program du tror kan være installert i en katalog som ikke er oppført på mannsidene for varis-kommandoen, vil du kanskje bruke hvilken kommando med -en
alternativ for å finne alle forekomster av kommandoen gjennom hele systemet.