Skip to Content
Linux System Administration
book

Linux System Administration

by Tom Adelstein, Bill Lubanovic
March 2007
Intermediate 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.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

Beginning Linux System Administration

Beginning Linux System Administration

Sander van Vugt
Mastering Linux System Administration

Mastering Linux System Administration

Christine Bresnahan, Richard Blum

Publisher Resources

ISBN: 9780596009526Catalog PageErrata