
Explore Linux and Unix shell scripting fundamentals, learn basic constructs and standard operations, and apply practical applications to write professional scripts.
Identify prerequisites for shell scripting, and note that prior programming experience is helpful. Explore Unix and Linux environments, and how comments in Unix are used in scripting.
Explore every topic in this shell scripting course, in order of complexity, with two excellent different examples illustrating varied concepts and structures, and access the YouTube resources.
Explore how a shell acts as a command-line interpreter that runs commands, interfaces with the kernel, and introduces shell types and basic commands like echo and $0.
Learn to create a simple hello world shell script in the terminal, set executable permissions with chmod +x, verify with ls -l, and run the script to print hello world.
Develop a view of shell scripting, including what a shell is, how to invoke it, and how to create and execute simple scripts; the next section covers basics of fasting.
Explore the basics of paths and variables in shell scripting, including declaring shell variables and environment variables, referencing them with $ and exporting variables to share across scripts.
Discover how shell scripting handles comments, including single-line and multi-line formats, and how to use here documents to display multi-line text in output.
Explore shell scripting conditional statements, using if conditions and comparison operators to test numbers. Learn to combine conditions with and/or, and to implement else branches in nested or multiple conditions.
Explore shell scripting loops by using for loops with ranges, as well as while and until conditions. Apply break and continue to control flow and print sequences of numbers.
Explore string processing in shell scripting with stream processing concepts, measuring string length, concatenating strings, and comparing two strings using the equality operator, illustrated with sample inputs such as hello.
Explore arithmetic basics in shell scripting by creating variables and performing addition, subtraction, multiplication, and division, then verify results. Learn to convert hexadecimal input to decimal using a command-line utility.
Consolidate facts and variables, add comments, and apply scripting best practices; explore loops, string processing, and numerical arithmetic in shell scripting.
Learn how to redirect command output to a file using redirection operators, with examples of overwriting versus appending to a log file to enable future logging.
Explore standard input, output, and error in shell scripts, including file descriptors 0, 1, 2; pass and read arguments like $0, $1, and $@ from standard input.
Discover how standard output and standard error differ, and redirect them to separate files using descriptors one and two in shell scripts.
Learn to enable communication between shell scripts by defining a variable in one script, exporting it, and sourcing it in a second script to use the value.
Explore redirection to different places, read terminal input, and process command-line arguments, then examine standard output and standard error and how to communicate with other scripts.
Explore how to declare shell variables, assign values, and manage scope using declare. Learn to create read-only variables with readonly and see examples.
Learn shell scripting arrays: declare arrays with values, print elements by index, count array length, delete and insert elements, and work with array indexes.
Learn how to define and reuse shell functions, pass multiple arguments via $1, $2, etc., and perform simple operations like adding two arguments and printing results.
Create directories and files, verify existence, read and write data, overwrite content when needed, read files line by line, and delete files using shell scripting basics.
Learn to declare variables, manipulate arrays, write functions with different argument types, and read and write files and directories in shell scripting.
Learn how to use grep to search and filter text in files, including quiet checks (-q), case-insensitive (-i), invert matches (-v), and context (-A, -B).
Explore introduction to awk in shell scripting: read files, match patterns, and print lines and specific columns using $1, $2, and $3, with space-separated fields.
Learn to use sed to process, manipulate, or perform substitution through streams and files. Apply pattern matching operations, substitution with s, and global replacements to modify or print results.
Explore the basic application of different features and how to use them inside shell scripts, and preview upcoming application scripts in the next model.
Explore professional scripting menus in shell scripting by building an interactive command-line menu with select and case statements, handling user input, validation, and looping for continuous prompts.
Learn how to modularize shell scripts by sourcing external scripts and reusing functions and variables to reduce code repetition.
Define and load a user-editable config file with contexts like location and hostname. Export each line as script variables and reuse them to customize behavior.
Master curl to fetch and post json data from remote servers, handle success and error responses, and parse api responses with jq.
Identify and implement menu writing and waiting in the cell state, model scripts to reduce code repetition, and use utilities to handle remote server calls.
Master three debugging methods for scripts, including minus x for step-by-step, line-by-line execution to locate errors, and point-to-point debugging for focusing on specific lines or functions.
Explore shell scripting error handling by checking command exit statuses, managing success and failure in remote connections, and implementing logging to record outcomes.
Learn to implement logging in shell scripts by wrapping echo in log functions, redirecting outputs to log files, and using logs to verify application status.
Explore managing groups within shell scripts and leveraging the logging feature to improve standard outputs, concluding the module and discourse.
Explore what's next after the shell scripting course by inviting questions and using the available resources in the comments to discuss topics and continue learning.
Why this course? The most basic and must language for any software engineer, be it developer or tester or system administrators is shell scripting. Why learn bash scripting?
1. This course is a compact version of shell scripting with all the details to start.
2. It talks less theory and more action.
3. Simple explanations are given for different constructs in scripting.
4. The lectures are created in step by step fashion and in short format.
5. With small examples of different utilities as well as some advance topics how you can use shell scripting in professional way.
6. All the scripts are available on GitHub.
7. This course is also compiled, keeping in mind that any naive user who are eager to learn shell scripting.