2020-07-03
"Forgive me Father, for I have sinned, and I am no longer worthy to be called your son..."
Thus went the canned confession of the prodigal son in Jesus' parable. But before he was able to finish reciting those words, the Father had run to him, and decreed that a celebration must be made for the beloved returnee. Such is the lavish grace of God.
And I will freely confess that I need God's forgiveness for all manner
of unworthy things in my life. But the confession I intend to make here
is less spiritual and more technical. It is that I have been speaking of
bash
without really meaning bash
at all.
I have been using the term as if it were precisely synonymous with "the
shell". And we have spoken previously about the subtle difference
between "the shell", "the terminal", and "the command line". But there
is also a subtle difference between the shell program sh
written for
Unix in the 1970s, developed first by someone called Thompson, and then with
extra functionality added by someone called Bourne (not that
Bourne), and the bash
shell, which was written by Brian Fox and released in 1989 as part of
the open-soure GNU Project.
The first version is known as the Thompson shell, the next as the
Bourne shell; but instead of calling it the Fox Shell, the GNU version
was called the Bourne Again Shell or bash
.
And as Jesus said: "You must be born
again". But while Jesus' words are
as true as the night he spoke them to Nicodemus, the bash
shell has
now been replaced as the default Debian system
shell by dash
, which is itself a Debian port of ash
, the
Bourne-compatible shell made by someone called Almquist.
But I myself actually use zsh
, which is another extension of the
Bourne shell, created by Paul Falstad, and pronounced with an American
'zee', so that it's a 'zee-shell' (like she zells on the zeashore).
We will talk about configuring zsh
as your interactive shell another
time.