Skip to Main Content
Linux System Administration
book

Linux System Administration

by Tom Adelstein, Bill Lubanovic
March 2007
Intermediate to advanced content levelIntermediate to advanced
304 pages
11h 12m
English
O'Reilly Media, Inc.
Content preview from Linux System Administration
Useful Elements for bash Scripts
|
223
echo "$0 ran at" $(date) >> delete.log
if [ ! -e "$1" ]
then
echo "$1 does not exist" >> delete.log
elif [ -f "$1" ]
then
echo -n "file $1 " >> delete.log
if rm "$1" 2>> delete-err.log
then
echo "deleted" >> delete.log
else
echo "not deleted" >> delete.log
fi
elif [ -d "$1" ]
then
echo -n "directory $1 " >> delete.log
if rmdir "$1" 2>> delete-err.log
then
echo "deleted" >> delete.log
else
echo "not deleted" >> delete.log
fi
fi
Now, at last, when you run the command:
admin@server1:~$ ./removefiles "my file"
the last line of delete.log will be:
file my file deleted
Loops
If you want to do something more than once, you need a loop. bash has three fla-
vors:
for, while, and until.
The lovely and talented
for loop has this general appearance:
for arg in list
do
commands
done
It executes the commands action (which can cover as many lines and separate com-
mands as you want) specified between
do and done for each item in list. When the
commands run, they can access the current item from
list through the variable $arg,
The syntax may be a bit confusing at first: in the
for statement you must specify arg
without the dollar sign, but in the commands you must specify $arg with the dollar
sign.
Some simple examples are:
admin@server1:~$ for stooge in moe larry curly
> do
224
|
Chapter 10: ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

Mastering Linux System Administration

Mastering Linux System Administration

Christine Bresnahan, Richard Blum
Mastering Linux Administration

Mastering Linux Administration

Alexandru Calcatinge, Julian Balog

Publisher Resources

ISBN: 9780596009526Supplemental ContentCatalog PageErrata