Images of shells by the sea

35 Best Free and Open Source Linux Shells

The shell is a program that takes commands from the keyboard and gives them to the operating system to perform. This environment lets users run commands, programs, and shell scripts. The shell is both an interactive command language and a scripting language, and is used by the operating system to control the execution of the system using shell scripts.

The first Unix shell was the Thompson shell, sh, written by Ken Thompson at Bell Labs back in the early 1970s. Nowadays, on many Linux systems, bash (which stands for Bourne Again SHell) or zsh acts as the shell program. bash was first released in 1989, and implements the POSIX standard plus many extensions.

But there are lots of other free and open source shells available for Linux. We spotlight our recommended free and open source shells.

Ratings chart

Let’s explore the 35 shells in more detail. For each program we have compiled its own portal page, a full description with an in-depth analysis of its features, together with links to relevant resources.

Shells
zshAdvanced and programmable command interpreter
NushellAdopts the Unix philosophy of shells where pipes connect command together
fishSmart and user-friendly command line shell
XonshPython-powered, cross-platform shell language and command prompt
bashsh-compatible command language interpreter
MurexIntuitive, typed and content aware shell
PowerShellCross-platform automation and configuration framework
ElvshExpressive programming language and a versatile interactive shell
OilsBilled as an upgrade to bash. Written in Python.
DASHPOSIX-compliant implementation of sh that aims to be as small as possible
shShell parser, formatter, and interpreter
tcshC shell with file name completion and command line editing
mkshMirBSD Korn shell
ksh Unix shell which was developed by David Korn at Bell Labs
brushPOSIX- and bash compatible shell
RashLanguage, library, and shell REPL for Racket.
ionModern system shell that features a simple, yet powerful, syntax
CicadaBash-like command environment with scripting and job control
YashYet another shell
okshPortable OpenBSD ks
esExtensible shell with higher-order functio
duneA shell by the beach
coshConcatenative command-line she
MarcelModern command environment combining Python with Unix pipelines
HilbishHighly extensible command environment configured with Lua
gshPOSIX-compatible generative shell
arshStatically typed scripting language with shell-like features
Sushi shellBash clone shell implemented in Rust
lokshLinux port of OpenBSD's Korn-compatible command interpreter
fortshShell written in Fortran
hshSlightly different take on your shell
ReShellModern shell
rashRudimentary shell
DaxCustom Unix shell implementation
cjshPOSIX-oriented command environment with modern interactive features

This article has been updated to reflect the changes outlined in our recent announcement.

Best Free and Open Source Software LinuxLinks helps you discover the best free and open source software for Linux. Explore our extensive collection of recommended applications, including alternatives to popular proprietary software.

We also publish software reviews, Linux tutorials, hardware reviews, free programming books and articles covering the wider open source community. Browse our Linux resources to discover more.

Know a useful free and open source Linux application we haven't covered? Suggest a program for inclusion.

Has your software been featured on LinuxLinks? Display one of our Featured on LinuxLinks badges on your website or GitHub README.
Subscribe

Please read our Comment Policy before commenting.

Notify of
guest
2 Comments
Oldest
Newest Most Voted
tanziro
tanziro
1 year ago

“Rating Chart” is missing.