Find en fil i linux

Det kan være vanskeligt at finde en fil i et Linux-system, hvis du ikke ved, hvordan man gør det. Den bedste måde at finde filer på er ved at bruge flere forskellige terminalkommandoer. At mestre disse kommandoer kan give dig fuld kontrol over dine filer, og de er meget mere kraftfulde end de simple søgefunktioner i andre operativsystemer.

Trin

Metode 1 af 3: Brug af "finde"

Billede med titlen 690519 1
1. Søg efter en fil efter filnavn. Dette er den enkleste søgning, du kan udføre med finde-kommando. Kommandoen nedenfor vil søge i den aktuelle mappe og alle undermapper i henhold til forespørgslen.
find -iname "filnavn"
  • Brug -indtag i stedet for -navn at ignorere store bogstaver. Det -navn-kommandoen skelner mellem store og små bogstaver.
Billede med titlen 690519 2
2. Indstil en søgning for at søge i rodmappen. Hvis du vil søge i hele systemet, kan du bruge parameteren / tilføje til søgningen. Med dette spørger du finde for at søge i alle mapper, startende ved root.
find / -iname "filnavn"
  • Du kan starte søgningen i en bestemt mappe ved at / erstatte med en mappesti, som f.eks /hjem/pat.
  • Du kan . bruge, i stedet for /, for at tvinge søgningen til kun at blive udført i den aktuelle mappe og undermapper.
    Billede med titlen 690519 3
    3. Brug jokertegnet .*at søge efter noget, der matcher en hvilken som helst del af forespørgslen. Jokeren * kan være nyttigt til at finde noget, hvis du ikke kan huske det fulde navn, eller hvis du vil finde alt med en bestemt udvidelse.
    find /home/peter -iname "*.konf"
  • Dette returnerer alt .conf-filer i Peters brugermappe (og undermapper).
  • Du kan også bruge den til at finde alt, der matcher en del af filnavnet. For eksempel, hvis du har mange dokumenter relateret til wikiHow, kan du finde dem alle ved at skrive "*wiki*".
    Billede med titlen 690519 4
  • 4. Gør dine søgeresultater nemmere at administrere. Får du mange søgeresultater, kan det være svært at vade igennem. Brug tegnet | og videresend søgeresultaterne til "fra"-filterprogram. Dette kan gøre det meget nemmere at rulle og filtrere resultaterne fra.
    find /home/pat -iname "*.konf" | mindre
    Billede med titlen 690519 5
    5. Find bestemte typer resultater. Du kan bruge parametre til kun at vise bestemte resultater. Du kan se efter almindelige filer (f), bibliotek` (d), symbolske links (l), tegnenheder (c) og blokere enheder (b), ved at bruge den relevante parameter.
    find / -type f -iname "filnavn"
    Billede med titlen 690519 6
    6. Filtrer søgeresultaterne efter størrelse. Hvis du har mange filer med lignende navne, men du kender den omtrentlige størrelse på filen, kan du reducere resultaterne ved at filtrere efter størrelse.
    find / -størrelse +50M -iname "filnavn"
  • Dette returnerer resultater om filer større end 50 megabyte. Du kan+ eller - bruge til at søge efter mere eller mindre store filer. Lad dig + eller - væk, så begynder den at søge efter filer fra Nemlig den angivne størrelse.
  • Du kan filtrere efter bytes (c), kilobytes (k), megabyte (m), gigabyte (G) eller 512-byte blokke (b). Bemærk, at størrelsesflaget skelner mellem store og små bogstaver.
    Billede med titlen 690519 7
    7. Brug logiske operatorer til at kombinere forskellige søgefiltre. Du kan bruge -og, -eller og -ikke operatører, til at kombinere forskellige typer søgninger på samme tid.
    find /reisfotos -type f -størrelse +200k -ikke -iname "*2015*"
    Kommandoen vil finde filer i mappen "rejsebilleder" der er større end 200 kilobyte, men uden "2015" i filnavnet.
    Billede med titlen 690519 8
    8. Søg efter filer efter ejer eller tilladelser. Hvis du leder efter en bestemt fil, der ejes af en bruger, eller filer med specifikke tilladelser, kan du indsnævre søgningen yderligere.
    find / -bruger pat -iname "filnavn" find / -gruppe brugere -iname "filnavn" find / -perm 777 -iname "filnavn"
    Søg i ovenstående eksempler efter specifikke brugere, grupper eller tilladelser. Du kan også udelade filnavnet for at returnere alle filer, der matcher den type. For eksempel, find / -perm 777 returnerer alle filer med 777 tilladelser (ingen begrænsninger).
    Billede med titlen 690519 9
    9. Kombiner kommandoer for at udføre handlinger, når filer er fundet. Du kan bruge kommandoen finde kombinere med andre kommandoer, så du kan køre dem på de filer, der er et resultat af forespørgslen. Adskil kommandoen finde og den anden kommando med -exec-flag, og afslut linjen med {} ;
    finde . -type f -perm 777 -exec chmod 755 {} ;
    Søger i den aktuelle mappe (og alle undermapper) efter filer med 777 tilladelser. Efter det bliver det chmod-kommando bruges til at ændre tilladelser til 755.

    Metode 2 af 3: Brug af "lokalisere"

    Billede med titlen 690519 10
    1. Installer .lokalisere-fungere. Kommandoen lokalisere virker generelt meget hurtigere end finde, fordi den bruger en database med din filstruktur. Ikke alle Linux-distributioner inkluderer denne funktion som standard, så indtast følgende kommandoer for at installere den, hvis du kan:
  • type sudo apt-get opdatering og tryk ↵ Indtast.
  • Du kan installere det i Debian og Ubuntu på følgende måde: Type sudo apt-get install mlocate og tryk ↵ Indtast. hvis lokalisere allerede er installeret, får du beskeden mlocate er allerede den nyeste version at se.
  • I Arch Linux bruger du pacman-pakkehåndteringen: pacman-Syu mlocate
  • For Gentoo, brug emerge: fremkomme mlocate
  • Billede med titlen 690519 11
    2. opdatere dig .lokaliseredatabase. Det lokalisere- kommandoen vil ikke finde noget, før en database er bygget og opdateret. Dette gøres dagligt, men du kan også køre det manuelt. Du bliver nødt til at gøre dette først, hvis du straks lokalisere ønsker at begynde at bruge.
    type sudo opdateretb og tryk ↵ Indtast.
    Billede med titlen 690519 12
    3. Brug .lokaliseretil at udføre simple søgninger.lokalisere er hurtig, men den har ikke så mange muligheder som finde. Du kan gøre det på samme måde som med finde lav en simpel søgning.
    lokalisere -i "*.jpg"
  • Denne kommando søger i hele systemet efter filer med filtypenavnet .jpg. Jokeren * fungerer på samme måde som med finde.
  • Samt kommandoen finde, skal -jeg ignorere store bogstaver i forespørgslen.
    Billede med titlen 690519 13
  • 4. Begræns resultaterne af din søgning. Hvis dine søgninger giver alt for mange resultater til at bruge, kan du tynde ud med denne mulighed -n, efterfulgt af det antal resultater, du ønsker vist.
    lokalisere -n 20 -i "*.jpg"
  • Kun de første 20 resultater, der matcher forespørgslen, vil blive vist.
  • Du kan også bruge skiltet | bruge til at sende resultaterne gennem sluserne til mindre for nemmere at rulle.

    Metode 3 af 3: Søg efter tekst i filer

    Billede med titlen 690519 14
    1. Brug kommandoen .grepfor at søge efter strenge i filer. Hvis du leder efter en fil, der indeholder en bestemt tekst eller streng, kan du bruge kommandoen grep brug. En simpel grep- kommandoen er konstrueret på følgende måde:
    grep -r -i "søgeforespørgsel" /sti/til/mappe/
  • -r indstille søgningen til "rekursivt", så den søger i den aktuelle mappe og alle dens undermapper efter en fil, der indeholder forespørgselsstrengen.
  • -jeg betyder, at forespørgslen ikke skelner mellem store og små bogstaver. Hvis du vil tvinge søgningen til at skelne mellem store og små bogstaver, skal du forlade parameteren -jeg væk.
  • Billede med titlen 690519 15
    2. Udelad ekstra tekst. Når du grep brugt til en søgning, som angivet ovenfor, vil du se filnavnet sammen med teksten og den tilsvarende forespørgsel, begge fremhævet. Du kan skjule den tilsvarende tekst og kun vise filnavnene sammen med stierne ved at tilføje følgende:
    grep -r -i "søgeforespørgsel" /sti/til/mappe/ | skære -d: -f1
    Billede med titlen 690519 16
    3. Skjul fejlmeddelelser. Kommandoen grep vil returnere en fejl, hvis den forsøger at få adgang til mapper uden den nødvendige tilladelse, eller hvis den støder på tomme mapper. Du kan videresende fejlmeddelelserne til /dev/null, hvilket forhindrer dem i at blive vist i søgeresultaterne.
    grep -r -i "søgeforespørgsel" /sti/til/mappe/ 2>/dev/null

  • Оцените, пожалуйста статью