awk-kommandogenerator
Generer awk-kommandoer for mønstersøk og tekstbehandling
Kom i gang med awk
## Hva er awk?
`awk` er et programmeringsspråk for å behandle tekst. Den skanner inndata linje for linje, deler hver linje i felt og kjører et program med `pattern { action }`-regler mot dem. Den er utmerket til kolonneuttrekk, tabellformede rapporter og aritmetikk per linje.
## Hvordan bruke
1. **Skriv inn programmet**: Angi et `awk`-program som `{print $1}`. 2. **Sett feltskilletegn** (valgfritt): `-F ','` for CSV-inndata. 3. **Angi fil**: Skriv inn filen som skal behandles. 4. **Kopier og kjør**: Kopier den genererte kommandoen til terminalen din.
Programsyntaks
Et `awk`-program er en sekvens av regler:
``` pattern { action } pattern { action } ```
### Innebygde variabler - `$0` — hele den gjeldende linjen - `$1`, `$2`, … — 1., 2., … felt (delt på `FS`) - `NF` — antall felt i den gjeldende linjen - `NR` — gjeldende linjenummer (på tvers av hele filen) - `FS` — feltskilletegn (standard er mellomrom; settes via `-F`)
### Spesielle mønstre - `BEGIN { … }` — kjører én gang før inndata leses (bra for initiering/topptekst) - `END { … }` — kjører én gang etter at all inndata er konsumert (bra for summeringer)
### Eksempler - `{print $1}` — skriv ut det første feltet i hver linje - `{sum += $1} END {print sum}` — summer den første kolonnen - `NR == 1 {next} {print}` — hopp over topptekstraden - `$3 > 100 {print $1, $3}` — skriv ut rader der det tredje feltet overstiger 100
### Sitater Pak inn programmet i enkle anførselstegn slik at `$`, `{` og `}` ikke blir tolket av skallet. Denne generatoren håndterer siteringen for deg.
▶Hvordan tolker jeg en CSV-fil?
▶Hvordan beregner jeg en løpende sum?
Hvis dette verktøyet har vært nyttig for deg, vurder å kjøpe meg en kaffe.
Kjøp meg en kaffe