# Advanced Shell Scripting
by Seth Kenlon

Even the most basic shell scripting can make life easier. A [previous
article](insert-url-for-other-article-here) introduced shell scripting
on a fundamental level: if you can do it in your shell, then you can
script it. The way to get better at shell scripting is to use the
shell. A lot. Get good at that and you can write practically anything.









## Herlo Wolrd

Your next shell script will be a variation on the classic obligatory
`hello world`; instead of just printing a "hello world" message,
you'll *spell check* `hello world`.

When starting out, it's especially helpful to try each command you
want to perform in a terminal window first, confirm that it does what
you think it does (and look at the output it provides you), and then
enter it into your script-in-progress.

All the best software starts with documentation, so let's define what
it is, exactly, we're aiming for:

   `herlo` is a shell script that accepts a string from the user,
   checks its spelling, and returns the most likely spelling
   correction.

So that's what we want to accomplish: an immediate, non-interactive,
totally self-assured spell checker.


To invoke Brian W. Kernighan again:

"I think this is one
of the reasons the [UNIX] system is so productive; there's already a large
collection of things that people have already built, that we use, and
as we build our new things, then they become a part of the repertoire
of things that people, subsequently, can build upon.