Mastering Linux Shell Scripting - Second Edition

Master the complexities of Bash shell scripting and unlock the power of shell for your enterprise
Preview in Mapt

Mastering Linux Shell Scripting - Second Edition

Mokhtar Ebrahim, Andrew Mallett
New Release!

Master the complexities of Bash shell scripting and unlock the power of shell for your enterprise
Mapt Subscription
FREE
€29.73/m after trial
eBook
€9.73
RRP €27.35
Save 64%
Print + eBook
€28.99
RRP €28.99
What do I get with a Mapt Pro subscription?
  • Unlimited access to all Packt’s 5,000+ eBooks and Videos
  • Early Access content, Progress Tracking, and Assessments
  • 1 Free eBook or Video to download and keep every month after trial
What do I get with an eBook?
  • Download this book in EPUB, PDF, MOBI formats
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
What do I get with Print & eBook?
  • Get a paperback copy of the book delivered to you
  • Download this book in EPUB, PDF, MOBI formats
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
What do I get with a Video?
  • Download this Video course in MP4 format
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
€0.00
€9.73
€28.99
€29.74 p/m after trial
RRP €27.35
RRP €28.99
Subscription
eBook
Print + eBook
Start 14 Day Trial

Frequently bought together


Mastering Linux Shell Scripting - Second Edition Book Cover
Mastering Linux Shell Scripting - Second Edition
€ 27.35
€ 9.73
Mastering Kubernetes - Second Edition Book Cover
Mastering Kubernetes - Second Edition
€ 35.68
€ 9.73
Buy 2 for €19.46
Save €36.62
Add to Cart

Book Details

ISBN 139781788990554
Paperback284 pages

Book Description

In this book, you’ll discover everything you need to know to master shell scripting and make informed choices about the elements you employ.

Grab your favorite editor and start writing your best Bash scripts step by step. Get to grips with the fundamentals of creating and running a script in normal mode, and in debug mode. Learn about various conditional statements' code snippets, and realize the power of repetition and loops in your shell script. You will also learn to write complex shell scripts. This book will also deep dive into file system administration, directories, and system administration like networking, process management, user authentications, and package installation and regular expressions. Towards the end of the book, you will learn how to use Python as a BASH Scripting alternative.

By the end of this book, you will know shell scripts at the snap of your fingers and will be able to automate and communicate with your system with keyboard expressions.

Table of Contents

Chapter 1: The What and Why of Scripting with Bash
Technical requirements
Types of Linux shells
What is bash scripting?
The bash command hierarchy
Preparing text editors for scripting
Creating and executing scripts
Declaring variables
Variable scope
Command substitution
Debugging your scripts
Summary
Questions
Further reading
Chapter 2: Creating Interactive Scripts
Technical requirements
Using echo with options
Basic script using read
Script comments
Enhancing scripts with read prompts
Limiting the number of entered characters
Controlling the visibility of the entered text
Passing options
Try to be standard
Enhancing learning with simple scripts
Summary
Questions
Further reading
Chapter 3: Conditions Attached
Technical requirements
Simple decision paths using command-line lists
Verifying user input with lists
Using the test shell built-in
Creating conditional statements using if
Extending if with else
Test command with the if command
More conditions with elif
Using case statements
Recipe – building a frontend with grep
Summary
Questions
Further reading
Chapter 4: Creating Code Snippets
Technical requirements
Abbreviations
Using code snippets
Creating snippets using VS Code
Summary
Questions
Further reading
Chapter 5: Alternative Syntax
Technical requirement
Recapping the test command
Providing parameter defaults
When in doubt – quote!
Advanced tests using [[
Arithmetic operations using ((
Summary
Questions
Further reading
Chapter 6: Iterating with Loops
Technical requirement
for loops
Advanced for loops
The IFS
Counting directories and files
C-style for loops 
Nested loops
Redirecting loop output
while loops and until loops
Reading input from files
Creating operator menus
Summary
Questions
Further reading
Chapter 7: Creating Building Blocks with Functions
Technical requirements
Introducing functions
Passing parameters to functions
Variable scope
Returning values from functions
Recursive functions
Using functions in menus
Summary
Questions
Further reading
Chapter 8: Introducing the Stream Editor
Technical requirements
Using grep to display text
Understanding the basics of sed
Other sed commands
Multiple sed commands
Summary
Questions
Further reading
Chapter 9: Automating Apache Virtual Hosts
Technical requirements
Apache name-based Virtual Hosts
Automating virtual host creation
Summary
Questions
Further reading
Chapter 10: AWK Fundamentals
Technical requirements
The history behind AWK
Displaying and filtering content from files
AWK variables
Conditional statements
Formatting output
Further filtering to display users by UID
AWK control files
Summary
Questions
Further reading
Chapter 11: Regular Expressions
Technical requirements
Regular expression engines
Defining BRE patterns
Defining ERE patterns
Using grep
Summary
Questions
Further reading
Chapter 12: Summarizing Logs with AWK
Technical requirements
The HTTPD log file format
Displaying data from web logs
Displaying the highest ranking IP address
Displaying the browser data
Working with email logs
Summary
Questions
Further reading
Chapter 13: A Better lastlog with AWK
Technical requirements
Using AWK ranges to exclude data
Conditions based on the number of fields
Manipulating the AWK record separator to report on XML data
Summary
Questions
Further reading
Chapter 14: Using Python as a Bash Scripting Alternative
Technical requirements
What is Python?
Saying Hello World the Python way
Pythonic arguments
Supplying arguments
Counting arguments
Significant whitespace
Reading user input
Using Python to write to files
String manipulation
Summary
Questions
Further reading

What You Will Learn

  • Make, execute, and debug your first Bash script
  • Create interactive scripts that prompt for user input
  • Foster menu structures for operators with little command-line experience
  • Develop scripts that dynamically edit web configuration files to produce a new virtual host
  • Write scripts that use AWK to search and reports on log files
  • Draft effective scripts using functions as building blocks, reducing maintenance and build time
  • Make informed choices by comparing different script languages such as Python with BASH

Authors

Table of Contents

Chapter 1: The What and Why of Scripting with Bash
Technical requirements
Types of Linux shells
What is bash scripting?
The bash command hierarchy
Preparing text editors for scripting
Creating and executing scripts
Declaring variables
Variable scope
Command substitution
Debugging your scripts
Summary
Questions
Further reading
Chapter 2: Creating Interactive Scripts
Technical requirements
Using echo with options
Basic script using read
Script comments
Enhancing scripts with read prompts
Limiting the number of entered characters
Controlling the visibility of the entered text
Passing options
Try to be standard
Enhancing learning with simple scripts
Summary
Questions
Further reading
Chapter 3: Conditions Attached
Technical requirements
Simple decision paths using command-line lists
Verifying user input with lists
Using the test shell built-in
Creating conditional statements using if
Extending if with else
Test command with the if command
More conditions with elif
Using case statements
Recipe – building a frontend with grep
Summary
Questions
Further reading
Chapter 4: Creating Code Snippets
Technical requirements
Abbreviations
Using code snippets
Creating snippets using VS Code
Summary
Questions
Further reading
Chapter 5: Alternative Syntax
Technical requirement
Recapping the test command
Providing parameter defaults
When in doubt – quote!
Advanced tests using [[
Arithmetic operations using ((
Summary
Questions
Further reading
Chapter 6: Iterating with Loops
Technical requirement
for loops
Advanced for loops
The IFS
Counting directories and files
C-style for loops 
Nested loops
Redirecting loop output
while loops and until loops
Reading input from files
Creating operator menus
Summary
Questions
Further reading
Chapter 7: Creating Building Blocks with Functions
Technical requirements
Introducing functions
Passing parameters to functions
Variable scope
Returning values from functions
Recursive functions
Using functions in menus
Summary
Questions
Further reading
Chapter 8: Introducing the Stream Editor
Technical requirements
Using grep to display text
Understanding the basics of sed
Other sed commands
Multiple sed commands
Summary
Questions
Further reading
Chapter 9: Automating Apache Virtual Hosts
Technical requirements
Apache name-based Virtual Hosts
Automating virtual host creation
Summary
Questions
Further reading
Chapter 10: AWK Fundamentals
Technical requirements
The history behind AWK
Displaying and filtering content from files
AWK variables
Conditional statements
Formatting output
Further filtering to display users by UID
AWK control files
Summary
Questions
Further reading
Chapter 11: Regular Expressions
Technical requirements
Regular expression engines
Defining BRE patterns
Defining ERE patterns
Using grep
Summary
Questions
Further reading
Chapter 12: Summarizing Logs with AWK
Technical requirements
The HTTPD log file format
Displaying data from web logs
Displaying the highest ranking IP address
Displaying the browser data
Working with email logs
Summary
Questions
Further reading
Chapter 13: A Better lastlog with AWK
Technical requirements
Using AWK ranges to exclude data
Conditions based on the number of fields
Manipulating the AWK record separator to report on XML data
Summary
Questions
Further reading
Chapter 14: Using Python as a Bash Scripting Alternative
Technical requirements
What is Python?
Saying Hello World the Python way
Pythonic arguments
Supplying arguments
Counting arguments
Significant whitespace
Reading user input
Using Python to write to files
String manipulation
Summary
Questions
Further reading

Book Details

ISBN 139781788990554
Paperback284 pages
Read More

Read More Reviews

Recommended for You

Mastering Kubernetes - Second Edition Book Cover
Mastering Kubernetes - Second Edition
€ 35.68
€ 9.73
JavaScript and JSON Essentials - Second Edition Book Cover
JavaScript and JSON Essentials - Second Edition
€ 23.78
€ 9.73
Mastering Windows PowerShell Scripting - Second Edition Book Cover
Mastering Windows PowerShell Scripting - Second Edition
€ 41.63
€ 9.73
Mastering Blockchain - Second Edition Book Cover
Mastering Blockchain - Second Edition
€ 35.68
€ 9.73
Matplotlib for Python Developers - Second Edition Book Cover
Matplotlib for Python Developers - Second Edition
€ 30.92
€ 9.73
Functional Python Programming - Second Edition Book Cover
Functional Python Programming - Second Edition
€ 40.44
€ 9.73