Shell Programming,continued...
What Is Shell Programming?
If you have been following the earlier Guides to (mostly)
Harmless Hacking (GTMHH), you are already familiar with many
fun Unix commands. Shell programming is writing a file that holds
a sequence of Unix commands, which you can run in your shell
account by typing in only one line.
****************************************************
Newbie note: Don't know what a shell account is? Unix leaves
you scratching your head? You *must* have a shell account to
learn shell programming. You can get one for free at http://sdf.lonestar.org.
Just set up a PPP connection and telnet into Lonestar for your
Unix fun! However, Lonestar
doesn't allow you to telnet out. For a full service shell account,
check out http://rt66.com. Yes!
They have ssh logins! Note -- Linux,
FreeBSD, and OpenBSD
operating systems give you shell accounts on your home computer.
**************************************************
If you are familiar with DOS, you may have already done
something similar to shell programming: DOS batch files. The
basic idea is that you write a series of DOS commands and save
them with a file that ends with the extension "bat."
For example, you might name your batch file "myfile.bat."
Then any time you want to run it, you just type "myfile"
and it runs all the commands inside that file. (Note: if you
are in a different directory from myfile.bat, you either have
to tell your computer where to look for it with a "path"
command, or by typing in the entire path, for example "c:\myprograms\myfile.")
Unix -- an operating system that was created long before
DOS -- can do something very similar to a DOS batch file. Instead
of typing Unix commands one by one every time you need them,
you can write a shell script that automatically executes that
sequence. Then you save it as a file with permissions that make
it executable.
***************************************************
Newbie note: "Executable" doesn't mean the computer
goes out and murders your poor file. It means that when you type
the name of that file, the computer looks inside and does what
your file tells it to do. "Permissions" mean what can
be done by who with a file. For example, you could set the permissions
on your shell account file so that only someone in your account
could execute it. Or you could make it so anyone in the world
could run (execute) it -- something you usually do with the files
in your Web site, so that anyone who surfs in may read them.
***************************************************
But there is one huge difference between DOS and Unix
commands. In DOS, the commands "mkdir" and "MKDIR"
do exactly the same thing. In Unix, they would be two totally
different commands. Be absolutely careful in this lesson to type
all commands in lower case (small) letters, or this stuff will
not work.
More shell programming --->>