Werken met Bestanden
In Linux kunnen we bestanden openen, lezen, filteren, bewerken en analyseren met verschillende commando's.
Bestanden Lezen en Filteren
Concatenate (cat)
cat)Toont de inhoud van een bestand
cat bestand.txtHandig om een volledig bestand in één keer te tonen. Voor lange bestanden gebruik je less of more.
less bestand.txtEerste regels tonen (head)
head)Toont standaard de eerste 10 regels van een bestand.
head bestand.txtJe kan ook zelf het aantal regels kiezen met de -n optie.
head -n 5 bestand.txt # Toont de eerste 5 regelsLaatste regels tonen (tail)
tail)Toont standaard de laatste 10 regels.
tail bestand.txtOok hier kan je een specifiek aantal regels tonen:
tail -n 4 bestand.txt # Toont de laatste 4 regelsVoor real-time updates (bijvoorbeeld voor logbestanden) gebruik je de -f optie:
tail -f /var/log/syslog # Volgt updates van het syslog bestandZoeken in bestanden (grep)
grep)Zoekt naar specifieke tekst in een bestand.
grep "zoekterm" bestand.txtWanneer je naar een woord wil zoeken zonder rekening te houden met hoofdletters zoek je case-insentive, en gebruik je de optie -i:
grep -i "linux" bestand.txtWil je meer context kan je er voor kiezen om ook een aantal regels voor en na de match te tonen met de -C optie:
grep -C 3 "error" logbestand.txtIndien je in één keer alle bestanden wil doorzoeken in een map geef je een map op (eindigd op /) in plaats van een bestand, en gebruik je de -r optie:
grep -r "foutmelding" /var/log/Kolommen uit tekst halen
Stel je werkt met een tabel die opgeslagen is in een CSV bestand, dan kan je enkel de kolommen uit de tabel gaan halen waarin je geïnteresseerd bent.
💡 Een CSV (comma seperated values) bestand is een bestand waarin data wordt opgeslagen in een tabel. Elke lijn in de CSV file vertegenwoordigd een rij in de tabel, en de kolommen worden gescheiden door een 'delimiter', in dit geval een komma.
tabel.csv
index,voornaam,achternaam
0,Glenn,Van Loon
1,Nick,Van Acker
2,Jannes,Peeterskolommen -f
cut -d ',' -f 2 tabel.csv
# voornaam
# Glenn
# Nick
# Jannes-d ','stelt de delimiter in op komma (,)-f 2selecteerd de tweede kolom.
Wanneer je werkt met bestanden die een vaste breedte hebben kan je er ook voor kiezen geen rekening te houden met de delimiter en de -c optie gebruiken. Hiermee selecteer je bepaalde tekens op een vaste positie in elke regel.
cut -c 3-7 tabel.csv
# dex,v
# Glenn
# Nick,
# JanneSorteren (sort)
sort)We kunnen regels gaan sorteren in onze bestanden, standaard gebeurd dit alfabetisch.
gemeenten.txt
Brussel
Gent
Antwerpen
Hasselt
LeuvenMet het sort commando kunnen we de file gaan sorteren:
sort gemeenten.txt
# Antwerpen
# Brussel
# Gent
# Hasselt
# LeuvenOm te sorteren in omgekeerde volgorde gebruiken we -r:
sort -r gemeenten.txt
# Leuven
# Hasselt
# Gent
# Brussel
# AntwerpenWe kunnen ook complexere sorteringen gaan uitvoeren door opties te gaan combineren. Stel dat we een lijst van pokemons hebben waarvan we een sortering willen maken op basis van HP.
pokemon.txt
Pikachu;Electric;35
Charizard;Fire/Flying;78
Bulbasaur;Grass/Poison;45
Squirtle;Water;44
Gengar;Ghost/Poison;60
Snorlax;Normal;160
Jigglypuff;Normal/Fairy;115
Eevee;Normal;55
Lucario;Fighting/Steel;70
Gyarados;Water/Flying;95sort -t';' -k3 -n -r pokemon.txt-t';'zorgt ervoor dat ';' gebruikt wordt als scheidingsteken om kolommen te vormen.-k3neemt de derde kolom om op te sorteren.nzorgt er voor dat we op getallen (numeric) gaan sorteren in plaats van alfabetisch.-rzorgt ervoor dat we sorteren van hoog naar laag.
Dubbele lijnen verwijderen
Met behulp van het uniq commando kunnen we dubbele lijnen gaan verwijderen.
uniq bestand.txtMet behulp van de -c (count) optie kunnen we ook het aantal dubbele lijnen gaan tellen:
uniq -c bestand.txtAantal woorden, regels en tekens tellen
Het wc commando toont ons het aantal woorden, regels en tekens in een bestand.
wc pokemon.txt
# 10 10 226 pokemon.txtIn het pokemon.txt bestand zitten 10 lijnen, 10 woorden en 226 karakters.
Je kan dit commando gebruiken met de volgende opties wanneer je enkel geïnteresseerd bent in één of enkele:
wc -l: tel enkel aantal lijnenwc -w: tel enkel aantal woordenwc -c: tel enkel aan karakters
Bestanden bewerken met Nano en Vi
Nano
Nano is een eenvoudige editor die makkelijk te gebruiken is.
Om een bestand te openen in nano gebruik je het volgende commando:
nano bestand.txtOnderaan je tekst editor zie je de opties die je kan gebruiken om onder andere je bestand op te slaan of je editor te sluiten.

Vi
Vi en Vim zijn krachtigere editors, maar moeilijker voor beginners.
Een bestand openen in vi doe je met het commando:
vi bestand.txt
In Vi wordt er gewerkt met modi, er zijn er drie:
Command Mode (standaardmodus): Hiermee geef je commando’s in
Insert Mode (
i): Hiermee kan je tekst invoerenEx Mode (
:): Voor bestandsbeheer (opslaan, afsluiten)
Let op, Vi toont je niet welke commando's er voor je beschikbaar zijn zoals in nano. Hier zijn enkele belangrijke commando's voor als je met Vi zou willen werken:
i: Ga naar Insert Mode (begin met typen)ESC: Terug naar Command Mode:w: Opslaan:q: Afsluiten:q!: Afsluiten zonder opslaandd: Verwijder een volledige regelyy: Kopieer een regelp: Plak de gekopieerde regel/woord: Zoek een woord
Last updated