Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
Linux Bash Shell Scripting: A Practical way of Learning
Rating: 4.4 out of 5(119 ratings)
770 students

Linux Bash Shell Scripting: A Practical way of Learning

A practical approach to learning and exploring shell scripting with various industrial projects.
Created byShikhar Verma
Last updated 9/2021
English

What you'll learn

  • Overview about various shells in Unix Based Operating Systems
  • Introduction of Shell Programming
  • Bash Shell Startup Scripts
  • Shebang
  • Debug a script
  • The Shell Variables & Environment
  • Bash, Environmental & System Variables
  • set, env & export command
  • Quoting and their types
  • Performing Arithmetic Operations
  • Create an integer & constants Variable
  • Wildcard & Path name expansions
  • Industrial Project to Completely Automate the Pre-validation report
  • Conditional Statements (Decision Making)
  • If else statement & if..elif..else..fi statement
  • Logical AND &&, OR !!
  • test command & exit status of a command
  • Numeric, String & File Attributes Comparison
  • Positional parameters via special shell variable $1, $2, $3,...,$N
  • Bash Loops - for loop statement
  • for loop using C like Syntax, passing arguments, nested loop
  • Chessboard using nested loop statement
  • While loop statement
  • Case statement
  • Create a simple menu driven program or automation tool Using Case Statement
  • Shell Redirection & Process Management
  • Input Output Redirection in Linux
  • file descriptor (fd) to file
  • Foreground & background Process
  • Defining functions
  • Nested functions
  • Writing functions, Calling functions
  • Local & global variables
  • Passing arguments into a function
  • Return statement
  • Practice Lab Sessions
  • About AWK
  • Pattern matching in AWK
  • Pre & post processing in AWK
  • User defined variables in AWK

Course content

11 sections90 lectures9h 16m total length
  • Introduction8:50

    Engage in a practical, lab‑driven introduction to bash shell scripting, from basics to automation, with theory, lab sessions, and industry projects.

  • What is Linux Shell?4:59

    Explore how the Linux shell serves as the interface between users and the kernel, gathers input from you, translates human readable commands into kernel readable instructions, and executes programs.

  • Types of shells available in Linux8:43

    Discover how Linux shells act as interpreters, with bash as default and others like C-shell, Korn shell, and tcsh, accessible via SSH or terminal for commands like date and pwd.

  • About Shell Scripting7:36

    Learn how shell scripting automates tasks by executing command sequences, enabling pre-validation, monitoring, backups, and efficient administration across multiple servers.

  • Overview of Bash Shell2:06

    Introduce the bash shell, the Bourne again shell, as the default Linux shell and free Unix interpreter, noting its compatibility with Korn and C shells.

  • User’s Home Directory - .bash_profile, .bashrc & .bash_logout8:50

    Learn how user home directories under /home are configured and managed by /etc/profile and per-user files like .bash_profile, .bashrc, and .bash_logout for login and interactive shells.

  • Practice Lab Session - 18:17

    Create a normal user, log in, and verify the bash shell and login session; explore the home directory and the role of /etc/profile, /etc/bashrc, .bash_profile, and .bashrc in login order.

  • Practice Lab Session - 24:20

    Compare .bash_profile and .bashrc to show how login shells versus interactive non-login shells execute different startup files and display user-specific versus global messages.

  • Create a simple shell script8:16

    Learn to create a simple shell script using vi, add a shebang, test in a dry run, and grant executable permissions before deploying to production.

  • Debug a script10:33

    Master bash script debugging using debug mode (-x), set -x and +x, and syntax checks with set -n, while learning to run commands like date and uptime.

Requirements

  • PC or Laptop with internet Connection

Description

Learning is important but most important is how to explore it. This course is designed in such a way that you can learn as well as explore the entire course module with various industrial projects.


Practical approach to learn and explore the shell scripting with various industrial projects


Course Content


Introduction of Shell Programming

  • What is Bash Shell?

  • Types of Shell available in Linux

  • About Shell Scripting

  • Bash Shell Startup Scripts

  • User’s Home Directory - .bash_profile, .bashrc & .bash_logout

  • Shebang

  • Create a simple Shell Script

  • Setting up permissions on a script

  • Debug a Script


The Shell Variables & Environment

  • Bash Variables

  • Environmental Variables

  • System Variables

  • Assign values to shell variables

  • Customize the bash shell environments

  • set, env & export command

  • Rules for naming variable name

  • Simple Script using echo command

  • Quoting

  • There are three Type of quoting

  • The double quote (")

  • The single quote (')

  • The Backslash (\)

  • User's Input via Keyboard

  • Read Command

  • IFS

  • Practice Lab Session


Arithmetic Operations

  • Performing Arithmetic Operations

  • Create an integer Variable

  • Create the Constants Variable

  • Path name expansion

  • Wildcards [*], ?, [..] etc

  • Create & use aliases

  • Practice Lab Sessions


Industrial Project to Completely Automate the Pre-validation report

  • A Shell Script to collect required information from a server

  • The Bash Color

  • Writing Color Text

  • Various Color Codes for Foreground & Background Text

  • Lab Session on Bash Color

  • Script to fetch the system information i.e system_details

  • Schedule the script via cron

  • Final Script to fetch the environment report on a single click

  • Lab Session


Conditional Statements (Decision Making)

  • Overview of conditional execution

  • What is Condition?

  • Boolean value (True & False)

  • If else statement

  • Lab Session on if..else..

  • if..elif..else..fi statement

  • test command

  • Logical AND &&

  • Logical OR !!

  • The exit status of a command

  • Numeric Comparison

  • String Comparison

  • File Attributes Comparison

  • Shell Command line parameters

  • Positional parameters via special shell variable $1, $2, $3,...,$N.

  • Practice Lab Session


Bash Loops

  • Overview of loop statement

  • for loop statement

  • Lab on for loop

  • for loop using C like Syntax

  • for loop using command line arguments

  • Nested for loop statement

  • Chessboard using nested loop statement

  • While loop statement

  • Lab Session - read a text file line-by-line or using IFS

  • infinite while loop

  • case statement

  • Lab session on case statement

  • Create a simple menu driven program or automation tool Using Case Statement

  • Industrial Project

  • Discussed various scripts using for or while loop


Shell Redirection & Process Management

  • Input Output Redirection in Linux

  • Lab Session on redirection

  • Pipelines in Linux

  • tee command

  • file descriptor (fd) to file for output

  • file descriptor (fd) to file for input

  • file descriptor (fd) for reading & writing

  • Practice Lab Session

  • Overview of a Process

  • Foreground & background Process

  • Various Stats of a process

  • Lab Session


Functions

  • Defining functions

  • Displaying functions

  • Nested functions

  • Lab Session - writing functions

  • Calling functions

  • Local & global variables

  • Passing arguments into a function

  • return statement

  • Practice Lab Sessions

AWK

  • Introduction Awk

  • Pattern matching

  • User defined variables in awk

  • Awk pre-processing

  • Awk post-processing

  • Practice Lab Session


SED Stream Editor

  • Introduction

  • Replacing or substituting string.

  • Replacing the nth occurrence of a pattern in a line

  • Replacing all the occurrence of the pattern in a line

  • Changing the slash (/) delimiter

  • Using & as the matched string

  • Duplicating the replaced line with /p flag

  • Replacing string on a specific line number

  • Replacing string on a range of lines

  • Replace on a lines which matches a pattern

  • Deleting lines

  • Add a line after a match

  • Add a line before a match

  • Last Lecture


Who this course is for:

  • IT professionals across a broad range of disciplines who need to perform essential administration tasks and automation.
  • Graduate Students and also for those who are looking for a job in Automation using Shell Scripting in Linux & wants to get hands-on practical experience on Automation & build up a base on Shell Scripting..