DevOps-bootcamp · leksjon

Søke etter filer (find, grep)

Oppdag kraftige kommandoer som 'find' og 'grep' for å finne filer og bestemte tekstmønstre i filer på tvers av systemet.

Leksjon 3 av 411 trinn

Søke etter filer (find, grep) er en gratis leksjon i DevOps-bootcamp på CoddyKit. Dette er leksjon 3 av 4. Du kan lese valgfritt 3 leksjoner fra denne læringsstien gratis i sin helhet – deretter låser CoddyKit PRO opp alle leksjoner, samt praktisk øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i DevOps-bootcamp, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i DevOps-bootcamp inneholder totalt 4 leksjoner.

Hvorfor søke i Linux?

Å finne filer og tekst er en daglig oppgave i Linux. Tenk om De måtte finne en bestemt konfigurasjonsfil eller en kodelinje i et stort prosjekt!

Vi skal lære to kraftige kommandoer: find for å finne filer og kataloger, og grep for å søke *i* filer etter tekstmønstre.

Bli kjent med kommandoen `find`

Kommandoen find søker etter filer og kataloger i et kataloghierarki. Den er svært fleksibel!

Den grunnleggende strukturen er: find [path] [expression]. [path] angir hvor find skal begynne å lete, og [expression] definerer hva det skal søkes etter.

Finne filer etter navn

Den vanligste måten å bruke find på er å søke etter navn med alternativet -name. De kan bruke jokertegn som *.

La oss finne alle filer som slutter med .txt i gjeldende katalog.

cd /tmp
touch report.txt document.pdf notes.txt
find . -name "*.txt"

Finne filer etter type

De kan angi hvilken type oppføring find skal se etter, ved å bruke alternativet -type:

  • f for vanlige filer
  • d for kataloger

La oss finne alle kataloger på gjeldende plassering.

cd /tmp
mkdir mydir anotherdir
touch file.txt
find . -type d

Finne filer etter størrelse

Trenger De å finne store filer? Bruk alternativet -size. De kan angi enheter som c (byte), k (KB), M (MB) og G (GB).

  • +10M: større enn 10 MB
  • -5k: mindre enn 5 KB
  • 100c: nøyaktig 100 byte

Finn filer som er større enn 1 KB.

cd /tmp
dd if=/dev/zero of=small_file bs=100 count=1 2>/dev/null
dd if=/dev/zero of=large_file bs=2k count=1 2>/dev/null
find . -size +1k

Introduksjon til `grep`

Mens find finner filer, søker grep (Global Regular Expression Print) *i* filer etter bestemte tekstmønstre.

Den grunnleggende syntaksen er: grep [pattern] [file...]. [pattern] er teksten De ser etter, og [file...] er filene det skal søkes i.

`grep` for enkel tekst

La oss opprette en enkel tekstfil og bruke grep til å finne et ord i den. grep skriver ut hver linje som inneholder mønsteret.

cd /tmp
echo "Hello CoddyKit learners!" > greeting.txt
echo "This is a great lesson." >> greeting.txt
echo "CoddyKit is fun." >> greeting.txt
grep "CoddyKit" greeting.txt

Alternativer for `grep`: -i og -n

To nyttige alternativer for grep:

  • -i: Ignorer store og små bokstaver under søket.
  • -n: Vis linjenummeret der treffet ble funnet.

La oss finne «coddykit» (uten å skille mellom store og små bokstaver) og se linjenumrene.

cd /tmp
echo "Hello CoddyKit learners!" > greeting.txt
echo "This is a great lesson." >> greeting.txt
echo "coddykit is fun." >> greeting.txt
grep -i -n "coddykit" greeting.txt

Kombinere `find` og `grep`

De kan kombinere find og grep for å søke etter både filer *og* innholdet i dem. Alternativet -exec for find lar Dem kjøre en annen kommando på hver fil som blir funnet.

Her finner vi alle .txt-filer og søker etter «CoddyKit» i dem.

cd /tmp
echo "Hello CoddyKit" > file1.txt
echo "Hello World" > file2.txt
echo "CoddyKit rocks" > file3.txt
find . -name "*.txt" -exec grep -l "CoddyKit" {} +

Hurtigsjekk

De har en katalog med flere filer. Hvilken kommando finner alle filer med navnet log.txt eller error.log som er større enn 50 KB?

Oppsummering: Søke etter filer

Godt jobbet! De har lært hvordan De effektivt kan søke etter filer og innholdet i dem i Linux:

  • find: Finner filer og kataloger basert på ulike kriterier, som navn, type og størrelse.
  • grep: Søker *i* filer etter bestemte tekstmønstre, med alternativer for å ignorere forskjeller mellom store og små bokstaver og vise linjenumre.
  • Vi har også sett hvordan find og grep kan brukes sammen for effektiv innholdssøking.

Fortsett å øve på disse kommandoene for å bli fortrolig med navigering i Linux!

Gratis å komme i gang

Lær deg DevOps-bootcamp med en AI-veileder – gratis

Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.

Kurs
142
Leksjoner
568

Ofte stilte spørsmål

Er leksjonen «Søke etter filer (find, grep)» gratis?

Ja – du kan lese valgfritt 3 av leksjonene i læringsstien DevOps-bootcamp, inkludert «Søke etter filer (find, grep)», gratis i sin helhet her på nettet. Deretter låser CoddyKit PRO opp alle leksjoner, samt interaktiv øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Kurset i DevOps-bootcamp inneholder totalt 4 leksjoner.

Hva lærer jeg i «Søke etter filer (find, grep)»?

Oppdag kraftige kommandoer som 'find' og 'grep' for å finne filer og bestemte tekstmønstre i filer på tvers av systemet. Du øver på DevOps-bootcamp med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.

Trenger jeg erfaring for å begynne med DevOps-bootcamp?

Ingen tidligere erfaring er nødvendig. DevOps-bootcamp på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 3 av 4.

Hvor lang tid tar leksjonen «Søke etter filer (find, grep)»?

De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.

Kan jeg skrive og kjøre kode i denne DevOps-bootcamp-leksjonen?

Ja. Alle DevOps-bootcamp-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.

Alle leksjonene i dette kurset

  1. Vise filinnhold (cat, less, head, tail)
  2. Forstå filrettigheter (chmod, chown)
  3. Søke etter filer (find, grep)
  4. Opprette lenker: harde lenker og symbolske lenker
← Tilbake til DevOps-bootcamp