Intro to Shell Programming: Writing a Simple Web Gallery
A Simple Script

Akkana Peck
Thursday, March 12, 2009 12:33:03 PM
So you're not a programmer, you say? If you can string a few
shell commands together, it's not much of a step from there to
programming.
To demonstrate that, I'll take you through the steps of writing
a very simple web gallery script: one that will take your images
and build a little web page to show them off.
Your script will need to do some image operations like resizing from
the command-line. For that, I recommend ImageMagick, available as a
package in just about every Linux distro. Just
apt-get install imagemagick or
yum install imagemagick or whatever your distro prefers,
and you're ready to go. If you prefer GraphicsMagick, a fork of
ImageMagick, that's okay too.
All the basic commands are the same.
Related Stories on LinuxPlanet
|
For this project, you'll also want a directory with some images in it.
You can create a directory with mkdir dirname
or use your favorite file manager. Then copy some images into it.
Be sure to copy, not move: you'll be making changes to
images in this directory, and you wouldn't want to overwrite the
originals.
In a shell, change directory (cd) into your new image directory;
you'll be running your script from there.
Create your shell script
To create your shell script, use a text editor, not a word processor like
OpenOffice. If you don't have a favorite text editor yet, check out
the recent LinuxPlanet articles on
Kate.
A shell script is, at its most basic, a list of commands you want the
shell to run. It starts with a magic line:
#! /bin/sh
That's called a shebang line, because the # character is
usually pronounced "hash" and the !, "bang". It lets you run your
script like a program, by just typing the program name, and Linux
will figure out that it's a shell script, run by the shell, /bin/sh.
There's one other step you need before you can run your shell script:
you need to make it executable. Choose a file name (say, gal
for gallery) and save your shell script. Then, in a shell, you can
change its permissions this way:
chmod ugo+x gal
(that means "Make the file executable for user, group and other.")
If you prefer using gui tools, right-click on your newly created
script, choose Properties and look for the Permissions
tab: you can make the script executable there.
Now you have a shell script, and it's runnable. But it doesn't do
anything. That's the next step.
Next: Resize the Images and Create Thumbnails »