Shell keuze

Welke shell moet ik nu kiezen voor mijn dagelijkse werk?

Mensen die meer met computers werken willen meestal sneller en makkelijker hun werk doen. Dan ontkom je op een gegeven moment niet aan de commandline. Het is dus goed om eens na te denken welke shell je hiervoor gebruikt.

Lange tijd is er weinig gebeurt op het gebied van shells maar sinds enige tijd zijn er nieuwe ontwikkelingen.
De ZSH is populair geworden, een belangrijke reden is dat Apple in 2019 overgestapt is van de Bash shell naar ZSH. Dit had te maken met de licentie van de nieuwe versies van de Bash shell. Ondertussen was ZSH al aan een opmars bezig. Een groot voordeel is de functieomvang t.o.v. andere shells. Daarbij is Oh-My-ZSH heel populair. Dit is een verzameling erg handige scripts. En zwak punt uit eerdere vergelijkingen  is de portabiliteit. Ondertussen werkt ZSH op Linux, OpenBSD/NetBSD/FreeBSD, MacOS en het Windows Subsystem for Linux. Maar ook op Solaris, AIX etc. Dat was blijkbaar vroeger anders.

Natuurlijk is ZSH niet de enige keuze. Windows gebruikers kunnen al enige tijd gebruik maken van Powershell. In 2016 heeft Microsoft het beschikbaar gemaakt voor een aantal Linux distributies en MacOS. Als je gebruikt maakt van Azure is het ook handige oplossing. Het nadeel is dat de commando’s afwijken tussen de ouderwetse shells (en afgeleiden) en Powershell. Daarom denk ik dat het geen vervanging gaat worden voor de andere shells, behalve voor Windows gebruikers.

Ondertussen blijft OpenBSD nog gewoon Kornshell installeren als default. Een versie uit 1999 om precies te zijn! Dit is een robuuste, simpele shell qua functieomvang maar die nog wel voldoende krachtig is. Waarschijnlijk omdat deze eenvoudige aanpak meer aansluit bij de filosofie van OpenBSD. Al worden ook andere shells natuurlijk meegeleverd. Op andere systemen is Bash nog altijd de default. In 2019 is daar ook versie 5 van verschenen, na 10 jaar versie 4. Bash blijft voor vele mensen hierom ook bovenaan het lijstje staan. De strijd gaat nu vooral tussen Bash en Zsh.

Qua outsider hebben we sinds 2005 ook nog Fish. De laatste jaren is deze shell ook een stuk populairder geworden. Het doel van deze shell is om een eenvoudige shell te maken die goed te leren is maar aan de andere kant veel functionaliteit biedt. De shell lijkt de jaren ingehaald te zijn door de ZSH/Oh-My-Zsh combinatie, maar daar heb ik geen harde cijfers over.

Oudere shells zoals  TSH en CSH worden veel minder gebruikt. Dus de vraag is nu: welke shell is handig om te gebruiken?
Zelf heb ik voor  Zsh gekozen als reguliere shell. De reden is dat het de standaard is op mijn MacOS systemen en ook op Linux veel gebruikt wordt. Met OpenBSD blijf ik voorlopig op de Kornshell omdat ik even het meer minimalistische van OpenBSD wil ondervinden. Alleen is het straks wel interessant om wat te leren van de Powershell in het kader van Azure, maar ik zal er geen default shell van maken op één van mijn systemen.

~ door Marc Blok op februari 14, 2021.

Plaats een reactie