• Opret dig
  • Glemt adgangskode

User account menu

  • Artikler
  • Forside
  • Forum
  • Nyheder
  • Log ind
Hjem
LinuxIN.dk

Snak med

Opret dig!

Af uldall | 18.06.2011 09:48

awk og sætninger med mellemrum

Programmering
Hej folkens.
Jeg sidder og prøver at lave et script til at analysere en ordliste.

Jeg vil gerne have awk til at printe hvilke sætninger der fremgår oftest på min liste. Mit problem består i, at jeg kun kan få awk til at printe de enkelte ord.

AWK-kode ($1 er ordlisten)

cat $1 | awk '{arr[$1]++} END {for(i in arr) print arr[i],i}' $1 | sort -nr

Ordliste:

hej
hej med dig
hej med dig

AWK finder ganske rigtigt ud af, at ordet "hej" topper listen, idet det står der 3 gange.
Jeg vil gerne have AWK til at printe, at "hej med dig" står 2 gange i listen. Altså have AWK til at læse linjen som en sætning, og ikke individuelle ord.

- Hvordan gør man lige det?
  • Log ind eller opret dig for at tilføje kommentarer

Kommentarer1

# 1

14 år 4 måneder siden

Permalink

Indsendt af marlar den 19. juni 2011 kl. 10:51

Permalink

Jeg vil gerne have AWK

#0: Jeg vil gerne have AWK til at printe, at "hej med dig" står 2 gange i listen. Altså have AWK til at læse linjen som en sætning, og ikke individuelle ord.

Brug $0 inden i awk i stedet for $1. $1 betyder første felt (her ord), mens $0 betyder hele linjen. Altså fx:

cat ordliste | awk '{arr[$0]++} END {for(i in arr) print arr[i],i}'

Du kan også gøre det så simpelt:

uniq -ic ordliste

-i betyde case insensitive, så hej og Hej tæller som samme ord. Fjern -i hvis du ikke ønsker dette.
  • Log ind eller opret dig for at tilføje kommentarer

Svar søges

Østrigsk ministerium smider Microsoft ud til fordel for Nextcloud 0
Internettet er ved at dø. Vi kan stadig stoppe det 0
Tid til at lære noget igen 0
TPM 2 0
BigLinux 0

Seneste aktivitet

Brug carburetor til at forblive usynlig online 8
Sådan konfigurerer du flatpaks' flathub til verified only 9
Plasma tapet-skifter 3
How to upgrade to LMDE 7 4
Virksomheder og enheder der kører på Linux 11
NordVPN har udgivet kildekoden til sin grafiske brugergrænseflade 2
Flere og flere bruger Brave browseren 1
LibreOffice og Collabora: Hvorfor er de ikke i skolerne i stedet for Word og Google Docs? 11
Firewall igen 5
Værdien ved open source 2
Sailfish på android telefon 1
Ladybird Browser 7
Satiriske ordspil 3
Kan ikke boote på installation 26
Tilføj signatur til Evolution mail 2
LUKS kryptering - Er der andre der bruger det 15
Dansk distro til software udviklere 2
Linux Debian 5
Brother printer installation 2
Den er go 6

© 2025 Linuxin og de respektive skribenter

Oprettet og drevet af nørder siden 2004 !