Sådan finder du en fil i Linux ved hjælp af kommandolinjen

click fraud protection

Hvad skal man vide

  • Kommandoen, der bruges til at søge efter filer, kaldes Find. Den grundlæggende syntaks for find-kommandoen er som følger: Find [filnavn].
  • Efter Find, brug en genvej til at angive mappen: "." for indlejrede mapper; "/" for hele filsystemet; "~" for den aktive brugers hjemmemappe.
  • Brug udtryk -navn for at søge efter et filnavn. For eksempel: find / -navn *.mp3 søger i hele filsystemet efter en fil kaldet *.mp3.

Denne artikel forklarer, hvad LinuxFind kommandoen er, tilbyder søgeplaceringsgenveje, almindelige udtryk, eksempler på brug, mønstre, hvordan man sender output fra find-kommandoen til en fil, og hvordan man finder og udfører en kommando mod en fil.

Brug 'find'-kommandoen til at finde en fil i Linux

Kommandoen, der bruges til at søge efter filer, kaldes Find.

Den grundlæggende syntaks for find-kommandoen er som følger:

find filnavn.

Den aktuelt aktive sti markerer søgestedet som standard. For at søge i hele drevet skal du skrive følgende:

find / filnavn.

Hvis du derimod vil søge i den mappe, du befinder dig i, skal du bruge følgende syntaks:

Find. filnavn.
Find kommandoen lorem.odt i terminalvinduet på Ubuntu Linux

Når du søger efter navn på tværs af hele drevet, skal du bruge følgende syntaks:

find / -navn filnavn.
  • Den første del af find-kommandoen er find-kommandoen.
  • Den anden del er, hvor du skal begynde at søge fra.
  • Den næste del er et udtryk, der bestemmer, hvad man skal finde.
  • Den sidste del er navnet på den fil, der skal findes.

For at få adgang til skallen (nogle gange kaldet terminalvinduet) i de fleste distributioner skal du klikke på det relevante ikon eller trykke på Ctrl+Alt+T.

Søg efter placeringsgenveje

Det første argument efter find-kommandoen er det sted, du ønsker at søge. Selvom du kan angive en specifik mappe, kan du bruge en metakarakter at fungere som vikar. De tre metakarakterer, der fungerer med denne kommando, inkluderer:

  • Periode (.): Specificerer den aktuelle og alle indlejrede mapper.
  • Skråstreg (/): Specificerer hele filsystemet.
  • Tilde (~): Specificerer den aktive brugers hjemmemappe.

Søgning i hele filsystemet kan generere adgangsforbudte fejl. Kør kommandoen med forhøjede rettigheder (ved at bruge sudo-kommandoen), hvis du har brug for at søge på steder, som din standardkonto normalt ikke kan få adgang til.

Udtryk

Det mest almindelige udtryk du vil bruge er -navn, som søger efter navnet på en fil eller mappe.

Der er dog andre udtryk, du kan bruge:

  • -amin n: Filen blev sidst brugt +/- n minutter siden, afhængig af hvordan du indtaster tiden.
  • -nyere: Tager en anden fil som reference for at finde alle filer, der blev tilgået for nylig, og referencefilen.
  • -tid n: Filen blev sidst brugt mere/færre end n dage siden, afhængigt af hvordan du indtaster måltidspunktet (n).
  • -cmin n: Filen blev sidst ændret n minutter siden, afhængigt af hvordan du indtaster måltiden (n).
  • -cnewer: Tager en anden fil som reference for at finde alle filer, der blev tilgået for nylig, og referencefilen.
  • -ctime n: Filen blev sidst brugt mere/færre end n dage siden, afhængigt af hvordan du indtaster måltidspunktet (n).
  • -tom: Filen er tom.
  • -eksekverbar: Filen er eksekverbar.
  • -falsk: Altid falsk.
  • -fstype type: Filen er på det angivne filsystem.
  • -gid n: Filen tilhører gruppen med ID'et n.
  • -gruppe gruppenavn: Filen tilhører den navngivne gruppe.
  • -ilname mønster: Søg efter et symbolsk link, men ignorer sagen.
  • -iname mønster: Søg efter en fil, men ignorer sagen.
  • -inum n: Søg efter en fil med den angivne inode.
  • -ipath sti: Søg efter en sti, men ignorer sagen.
  • -iregex udtryk: Søg efter et udtryk, men ignorer sagen.
  • -links n: Søg efter en fil med det angivne antal links.
  • -navn navn: Søg efter et symbolsk link.
  • -mmin n: Filen blev sidst brugt +/- n minutter siden, afhængig af hvordan du indtaster tiden.
  • -mtime n: Filen blev sidst brugt mere/færre end n dage siden, afhængigt af hvordan du indtaster måltidspunktet (n).
  • -navn navn: Søg efter en fil med det angivne navn.
  • -nyere navn: Søg efter en fil, der er redigeret for nylig end den angivne referencefil.
  • -nogruppe: Søg efter en fil uden gruppe-id.
  • -nouser: Søg efter en fil uden bruger knyttet til den.
  • -sti sti: Søg efter en sti.
  • -læselig: Find filer, der er læsbare.
  • -regex mønster: Søg efter filer, der matcher et regulært udtryk.
  • -type type: Søg efter en bestemt type. Typeindstillinger omfatter:
    • -type d: Direktør
    • -type f: Filer
    • -type l: Symbollinks
  • -uid uid: Filens numeriske bruger-id er det samme som uid.
  • -brugernavn: Filen ejes af den bruger, der er angivet.
  • -skrivbar: Søg efter filer, der kan skrives til.

Eksempel på brug af kommandoen Find

Her er nogle af måderne, du kan bruge kommandoen find.

Sådan finder du filer, du har fået adgang til for mere end et vist antal dage siden

Sådan finder du alle filerne i din hjemmemappe, du har fået adgang til for mere end 100 dage siden:

find ~ -atime +100.

Sådan finder du tomme filer og mapper

Sådan finder du alle tomme filer og mapper i dit system:

find / -tom.

Sådan finder du alle de eksekverbare filer

Sådan finder du alle de eksekverbare filer på din computer:

find / -eksekverbar.

Sådan finder du alle de læsbare filer

Sådan finder du alle de filer, der kan læses:

finde / -læsbar.

Mønstre

Når du søger efter en fil, kan du bruge et mønster. Søg for eksempel efter alle filer med filtypenavnet mp3:

find / -navn *.mp3.

Afhængigt af den skal du bruger, skal du muligvis undslippe stjernen. Hvis du kører kommandoen og ikke får de resultater, du forventer, kan du prøve at citere hele mønsteret for at undslippe stjernen, som sådan: find / -navn '*.mp3'

Terminal i Ubuntu Linux viser kommandoen " find -navn *.mp3"

Sådan sender du output fra Find-kommandoen til en fil

Hovedproblemet med find-kommandoen er, at den nogle gange kan returnere for mange resultater til at se på på én gang. Led udgangen til hale kommando, eller output linjerne til en fil som følger:

find / -navn *.mp3 -fprint navn på filtiludskrivning.

Sådan finder og udfører du en kommando mod en fil

For at søge efter og redigere en fil på samme tid, skriv:

find / -navn filnavn -exec nano '{}' \;

Ovenstående kommando søger efter en fil kaldet filnavn og kører derefter nano-editoren for den fil, den finder.

Nano er navnet på en kommando, ikke en nøjagtig del af denne syntaks.