What this book covers
Chapter 1, Getting Started with Shell Scripting, begins with the basics of script design. How to make a script executable is shown as is creating an informative Usage
message. The importance of return codes is also covered with the use and validation of parameters.
Chapter 2, Working with Variables, discusses how to declare and use both environment and local variables. We also speak about how math is performed and how to work with arrays.
Chapter 3, Using Loops and the sleep Command, introduces the use of loops to perform iterative operations. It also shows how to create a delay in a script. The reader will also learn how to use loops and the sleep
command in a script.
Chapter 4, Creating and Calling Subroutines, starts with some very simple scripts and then proceeds to cover some simple subroutines that take parameters.
Chapter 5, Creating Interactive Scripts, explains the use of the read
built-in command to query the keyboard. Further, we explore some of the different options to read and also cover the use of traps.
Chapter 6, Automating Tasks with Scripts, describes the creation of scripts to automate a task. The proper way to use cron to run a script automatically at a specific time is covered. The archive commands zip
and tar
are also discussed for performing compressed backups.
Chapter 7, Working with Files, introduces the use of the redirection operator for writing out a file and use of read
command for reading a file. Checksums and file encryption are also discussed, and a way to convert the contents of a file into a variable is also covered.
Chapter 8, Working with wget and curl, discusses the usage of wget
and curl
in scripts. Along with this, return codes are also discussed with a couple of example scripts.
Chapter 9, Debugging Scripts, explains some techniques to prevent common syntax and logic errors. A way to send output from a script to another terminal using the redirection operator was also discussed.
Chapter 10, Scripting Best Practices, discusses some practices and techniques that will help the reader create good code every time.