Linux Command Line and Shell Scripting Techniques: Master practical aspects of the Linux command line and then use it as a part of the shell scripting
Dakic, Vedran, Redzepagic, Jasmin
- Learn how to use the command line and write and debug Linux Shell scripts
- Automate complex repetitive tasks and backups, and learn networking and security
- A practical approach to system administration, and virtual machine and software management
Linux Command Line and Shell Scripting Techniques begins by taking you through the basics of the shell and command-line utilities. You'll start by exploring shell commands for file, directory, service, package, and process management. Next, you'll learn about networking - network, firewall and DNS client configuration, ssh, scp, rsync, and vsftpd, as well as some network troubleshooting tools.
You'll also focus on using the command line to find and manipulate text content, via commands such as cut, egrep, and sed. As you progress, you'll learn how to use shell scripting. You'll understand the basics - input and output, along with various programming concepts such as loops, variables, arguments, functions, and arrays. Later, you'll learn about shell script interaction and troubleshooting, before covering a wide range of examples of complete shell scripts, varying from network and firewall configuration, through to backup and concepts for creating live environments. This includes examples of performing scripted virtual machine installation and administration, LAMP (Linux, Apache, MySQL, PHP) stack provisioning and bulk user creation for testing environments.
By the end of this Linux book, you'll have gained the knowledge and confidence you need to use shell and command-line scripts.
What you will learn
- Get an introduction to the command line, text editors, and shell scripting
- Focus on regular expressions, file handling, and automating complex tasks
- Automate common administrative tasks
- Become well-versed with networking and system security scripting
- Get to grips with repository management and network-based file synchronization
- Use loops, arguments, functions, and arrays for task automation
Who this book is for
This book is for anyone looking to learn about Linux administration via CLI and scripting. Those with no Linux command-line interface (CLI) experience will benefit from it by learning from scratch. More experienced Linux administrators or engineers will also find this book useful, as it will help them organize their knowledge, fill in any gaps, and work efficiently with shell scripts to increase productivity.
Vedran Dakic is a master of electrical engineering and computing and an IT trainer, covering system administration, cloud, automatization, and orchestration courses. He is a certified Red Hat, VMware, and Microsoft trainer. He's currently employed as head of the department of operating systems at Algebra University College in Zagreb. As part of this job, he's a lecturer for 3- and 5-year study programs in system engineering, programming, and multimedia tracks. Also, he does a lot of consulting and systems integration for his clients' projects - something he has been doing for the past 25 years. His approach is simple - bring real-world experience to all the courses that he teaches as it brings added value to his students and customers.
Jasmin Redzepagic is a professional master in computer engineering, with a sub-specialization in system engineering, but is a person with many hats worn over the years. Having worked in IT as long as he has, he has been a sound technician, SysOps, DevOps, hardware tester, editor-in-chief of a major magazine, writer, IT support lead, and head of IT at a couple of companies. He is currently employed by Algebra University College in Zagreb. This enables him to have a very wide overview of different technologies while still maintaining his focus - implementing and teaching the implementation of open source technologies in the field. Right now, his main interest is trying to teach his students and clients to understand the immense expanse of tools available for any conceivable task, with his goal being to get people to understand computers as something that is the most formidable tool we, as humanity, have ever had.
Table of Contents
- Basics of Shell and Text Terminal
- Using Text Editors
- Using Commands and Services for Process Management
- Using Shell to Configure and Troubleshoot Network
- Using Commands for File, Directory, and Service Management
- Shell-Based Software Management
- Network-Based File Synchronization
- Using the Command Line to Find, Extract, and Manipulate Text Content
- An Introduction to Shell Scripting
- Using Loops
- Working with Variables
- Using Arguments and Functions
- Using Arrays
- Interacting with Shell Scripts
- Troubleshooting Shell Scripts
- Shell Script Examples for Server Management, Network Configuration, and Backups
- Advanced Shell Script Examples