Waarom zou je een Terminal gebruiken?

Als je kijkt naar enkele van de voorbeelden die ik hier geplaatst heb, zoals de automatische YouTube hoofdstukken en de “Press ENTER to continue”, ga je zien dat ik regelmatig automatiseringen bouw via de Terminal.

Daar zijn een aantal redenen voor, en het niet is niet alleen omdat ik net zo cool wil zijn als Neo in de Matrix.1

Waarom dan wel?

Het is simpeler om te gebruiken

Ik houd er van om dingen makkelijk te houden. En hoewel het misschien eerst niet zo lijkt, is de Terminal vaak makkelijker. Niet voor alles, maar wel voor sommige dingen.

Heel vaak wil je simpelweg dat de computer een aantal stappen uitvoert, en je misschien eens een regel tekst laat intypen.

Daar hoef je niet een hele grafische omgeving voor te hebben. Sterker nog, dat kost vaak alleen maar meer tijd om te gebruiken.

Gewoon simpelweg een antwoord typen, op enter drukken, en de computer de rest laten doen, is meestal veel sneller.

Je kunt het starten van het commando natuurlijk prima doen vanuit een meer grafisch programma, bijvoorbeeld een sneltoets via Keyboard Maestro, of vanuit een * Alfred*-commando.

Vaak zul je niet eens echt iets hoeven doen in de Terminal, zie je het gewoon verschijnen, en zichzelf weer afsluiten.

Het is simpeler om te maken

Niet alleen is het simpeler in gebruik, het is vaak ook simpeler om te maken.

Met name als het om kleinere automatiseringen gaat, waar je bijvoorbeeld wat tekst als invoer neemt, er iets mee wilt doen, en weer tekst teruggeeft.

Dan zijn er zoveel handige programma’s die je kunt gebruiken (cat, sed, awk, grep), scripting-talen die je kunt inzetten (PHP, Python, Perl, shell scripting), en als je iets extra’s nodig hebt is er vaak ook iets. Moet je tekst bijvoorbeeld ineens van een webpagina komen? Dan is er altijd curl, wat ontzettend veel mogelijkheden heeft om gegevens van internet te halen.

Wanneer ik op de iPhone of iPad werk in Opdrachten om iets voor elkaar te krijgen denk ik regelmatig “Dit zou zoveel simpeler zijn in een Terminal”. En dat is niet voor iedereen, dat begrijp ik.

De grafische omgeving van een Opdrachten app spreekt natuurlijk veel meer tot de verbeelding, en laat je werken met bouwblokken. Zo hoef je niet zelf te weten welke commando’s je moet intypen, een groot verschil.

Zoals met veel dingen: er is een hogere leercurve, maar het geeft je ook meer vrijheid. Zo kun je meer gedaan krijgen, en in minder tijd.

Bovendien: als je het bouwen van de automatiseringen aan iemand anders over laat (eh, hoi) hoef jij eigenlijk nooit iets met de Terminal te maken te hebben.

Bonus: hoe werkt de Terminal?

En voor een korte bonusronde dan: stel dat je wel zelf met de Terminal wilt werken. Hoe pak je dat aan?

Dit heb ik al eens beschreven voor Apple Coach, al werkt het praktisch hetzelfde op de meeste andere systemen. Windows misschien uitgezonderd, maar zelfs daar heb je het Windows Subsystem for Linux als de gelijkmaker.


  1. Ok, dat is Trinity. En Neo zit eigenlijk niet eens in die scene. Maar je snapt m’n punt. ↩︎