Leer werken met de shell
- June 5, 2023
- 0
Wil je leren werken met de opdrachtprompt, maar ben je bang dat dat te moeilijk is? Dan start je misschien beter met een meer gebruiksvriendelijke shell, zoals fish. Nadien kun je altijd nog overstappen op bash, de standaardshell onder Linux.
1. Shell
Lang geleden was de commandline interface (of cli) de enige manier om op een Linux-systeem te werken. Sinds de komst van grafische desktopomgevingen is dat niet meer het geval. Toch is de cli in moderne distro’s nog steeds aanwezig. Open de terminal-applicatie van jouw distro en je komt terecht in de zogenaamde shell. De shell is het programma dat jouw opdrachten doorgeeft aan het systeem en de uitvoer ervan toont op het scherm.
2. Fish
Er bestaan heel wat shells voor Linux, zoals ksh (voornamelijk populair bij oudere sysadmins met een UNIX-achtergrond), bash (de standaardshell voor Linux) en dus ook fish. Fish moet je nog installeren op het systeem. Dat doe je met volgende opdracht in de bash-shell:
sudo apt install fish
Vervolgens schakel je over naar fish:
fish
Weet je niet meteen waar te beginnen? Geef dan de opdracht “help” op om de uitgebreide documentatie te openen in een browser.
3. Suggesties
Het grootste struikelblok voor beginners op de cli is om de enorme hoeveelheid opdrachten met hun gebruikelijke opties te memoriseren. Gelukkig helpt fish jou bij dat taakje! Zodra je enkele letters invoert, probeert fish die aan te vullen tot een bestaande opdracht. Let ook op de kleur waarin fish de letters toont. Zolang jouw invoer nog in het rood staat, is het geen geldige opdracht. Schakelt fish over op blauw, dan heb je de naam van een bestaande opdracht ingevoerd en kun je die uitvoeren. Suggereert fish de verkeerde opdracht? Druk dan op de tab-toets, kies met de pijltjestoetsen de gewenste opdracht en druk op enter. Fish toont meteen ook een beknopte beschrijving van elke opdracht, wat erg handig is!
4. Opties
Heb je eenmaal de juiste opdracht gevonden, dan gebruik je hetzelfde trucje nogmaals om de nodige opties aan te vullen. Wil je bijvoorbeeld een bestand unzippen, maar weet je niet (meer) hoe dat moet? Voer dan een min-teken in achter de unzip-opdracht om aan te duiden dat er een optie volgt. Druk vervolgens op de tab-toets om een lijst te tonen van alle beschikbare opties, inclusief een korte beschrijving. Selecteer de gewenste optie en bevestig je keuze met enter om de opdracht verder op te bouwen. Uiteraard kun je ook bestanden selecteren via de tab-toets. Een lange opdracht zoals:
unzip -l Downloads/2021-03-04-raspios-buster-armhf-lite.zip
Voer je in fish in met slechts enkele toetsen:
unz<tab> -<tab> Dow<tab> 2<tab>
5. Geschiedenis
Voer je meermaals dezelfde opdracht uit, dan hoef je die niet steeds opnieuw in te voeren. Je hebt misschien al gemerkt dat fish ook jouw oudere opdrachten toont in de suggesties. Met het pijltje naar rechts kies je de voorgestelde opdracht en met de pijltjes naar boven/beneden kies je uit de andere oudere opdrachten. Weet je niet meer hoe de oudere opdracht begon, maar herinner je je nog een deel ervan? Gebruik dan de zoekfunctie van fish, bijvoorbeeld:
history search download
Je voert de gewenste opdracht snel uit door er driemaal op te klikken en vervolgens de middelste muisknop (het scrollwieltje) in te drukken.
6. Scripting
Met de fish-shell kun je ook je eigen shell scripts schrijven. De syntax is iets eenvoudiger dan in bash, maar dat betekent ook dat je fish-scripts niet zomaar in bash kunt uitvoeren (omgekeerd trouwens ook niet). Houd dat goed in het achterhoofd als je voorbeeldscripts opzoekt op het internet!