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.txt
Handig om een volledig bestand in één keer te tonen. Voor lange bestanden gebruik je less
of more
.
less bestand.txt
Eerste regels tonen (head
)
head
)Toont standaard de eerste 10 regels van een bestand.
head bestand.txt
Je kan ook zelf het aantal regels kiezen met de -n
optie.
head -n 5 bestand.txt # Toont de eerste 5 regels
Laatste regels tonen (tail
)
tail
)Toont standaard de laatste 10 regels.
tail bestand.txt
Ook hier kan je een specifiek aantal regels tonen:
tail -n 4 bestand.txt # Toont de laatste 4 regels
Voor real-time updates (bijvoorbeeld voor logbestanden) gebruik je de -f
optie:
tail -f /var/log/syslog # Volgt updates van het syslog bestand
Zoeken in bestanden (grep
)
grep
)Zoekt naar specifieke tekst in een bestand.
grep "zoekterm" bestand.txt
Wanneer 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.txt
Wil 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.txt
Indien 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,Peeters
kolommen -f
cut -d ',' -f 2 tabel.csv
# voornaam
# Glenn
# Nick
# Jannes
-d ','
stelt de delimiter in op komma (,)-f 2
selecteerd 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,
# Janne
Sorteren (sort
)
sort
)We kunnen regels gaan sorteren in onze bestanden, standaard gebeurd dit alfabetisch.
gemeenten.txt
Brussel
Gent
Antwerpen
Hasselt
Leuven
Met het sort
commando kunnen we de file gaan sorteren:
sort gemeenten.txt
# Antwerpen
# Brussel
# Gent
# Hasselt
# Leuven
Om te sorteren in omgekeerde volgorde gebruiken we -r
:
sort -r gemeenten.txt
# Leuven
# Hasselt
# Gent
# Brussel
# Antwerpen
We 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;95
sort -t';' -k3 -n -r pokemon.txt
-t';'
zorgt ervoor dat ';' gebruikt wordt als scheidingsteken om kolommen te vormen.-k3
neemt de derde kolom om op te sorteren.n
zorgt er voor dat we op getallen (numeric) gaan sorteren in plaats van alfabetisch.-r
zorgt 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.txt
Met behulp van de -c
(count) optie kunnen we ook het aantal dubbele lijnen gaan tellen:
uniq -c bestand.txt
Aantal 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.txt
In 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.txt
Onderaan 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