
Explore bash and shell scripting to automate routine tasks on Unix/Linux, learn command history, variables, conditionals, loops, and command line processing, and build a solid foundation for programming.
Explore how Bash interfaces with Linux, interpreting and executing commands. Learn interactive and scripting modes, command structure, history features, and file permissions that shape shell workflows.
Explore the directory concept in Unix and Linux, covering absolute and relative paths, root and home directories, and navigation with cd and ls, plus globbing, piping, and redirection basics.
Learn to run commands in the background, manage foreground and background jobs, redirect output to files, and use bash job control, daemons, and escaping techniques to keep the shell usable.
Explore Bash interactive mode, where commands run line by line, and leverage command history, editing modes (emacs and vi) and tab completion for efficient shell work.
Master the vi editing mode, switching between insert and command modes, navigating with h j k l, (w, b, 0, $), using yank, paste, delete, and history search.
Explore bash fc to edit and reuse history commands, switch between vi and emacs modes, and bind shortcuts via inputrc for efficient shell scripting.
Explore how the bash environment shapes the shell, including profile, rc, and logout scripts, and learn to customize with aliases, options, and environment variables.
Explore bash shell options with the set and shopt commands to tailor editing modes (vi or emacs), prevent overwriting, control globbing, and manage shell variables.
Learn how single versus double quotes affect shell variable expansion, concatenate variables to build paths, and configure history settings such as ignore duplicates, ignore space, histfile, histsize, histtimeformat, and fc.
Learn to customize the bash prompt with ps1, ps2, and ps4, showing host and current directory using escapes like \h and \W, and understand the path variable and command security.
Learn how the cdpath and path variables affect navigating directories in bash, including an empty cdpath to prioritize the current directory and the role of environment variables and export.
Explore shell scripting essentials, explaining how scripts and functions run in memory or in a subshell, how exports affect scope, and the alias and precedence order.
Explore positional variables in Linux shell scripting, $0, $1, $2, and $#, and learn how $* vs $@ behave with IFS, plus function arguments and local versus global scope.
Explore bash variable handling in this lesson, including default value substitutions, assignment via substitution, conditional expansion with plus and minus, and slicing with offset and length.
Master in-place slicing of strings and command line arguments, and define descriptive variables and comments to build scripts with a usage message that handles missing arguments and defaults to five.
learn how bash pattern matching and parameter expansion manipulate strings and file paths, including extracting base names, directories, and extensions with #, ##, % and %% patterns.
Learn to assign command output to variables in Bash using command substitution, read file contents via redirection, and add timestamps with date for script naming.
Explore bash flow control with if, elif, else, case, and select, plus for, while, and until loops; learn to use exit status, testing commands, and robust error handling in scripts.
Learn to test conditions in bash with single and double square brackets, perform string and numeric comparisons, and use file attribute tests (-a -d -f -s -x) via exit statuses.
Test integers in bash using [ ] or [[ ]] with operators like -eq, -ne, -gt, and -ge, and demonstrate a for loop over /etc/passwd that prints each username and home directory.
Explore bash scripting techniques to process files and command line arguments, using for loops, sort, and case statements to extract and rank information from multiple texts.
Learn to build bash menus with the select statement, using case patterns and the REPLY variable with the PS3 prompt. See how while and until loops shape script control flow.
Explore how to distinguish command line options from arguments, use the shift command to manage optional parameters, validate inputs, and create robust shell scripts with clear usage messages.
Parse command line options and their arguments with the getopts built-in. Use a while loop and case to process options, track with OPTIND and OPTARG, and handle errors.
Explore parsing options with getopts to enhance a bash script that ranks websites by hits, using -h for highest, -l for lowest, -m for count, and -o for output file.
Explore bash arithmetic using increment and decrement operators and pre/post value behavior, and compare arithmetic tests in single brackets versus double brackets, plus practical let usage.
Explore how to use the bash for loop with double brackets for arithmetic, including initialization, condition, and update, and learn basic array handling with zero-based indexing.
Revisit for loops in bash by exploring arrays and indexing, handling empty elements, and using exclamation marks to inspect values while building a protocol lookup from services file with IFS.
Explains bash i/o and file descriptors, covering standard input, standard output, and standard error, redirection symbols, and here documents to manage streams.
Master the echo command in bash, its newline handling and backslash options, and discover the read and print commands, their format specifiers, and IFS-based input.
Automate log rotation in bash by using find and a while read loop to copy oversized logs with a time stamp and truncate originals.
Compare jobs and processes in bash, learn how background execution with & yields a job id and process id, and use fg, bg, and jobs to manage and reference them.
Explore how processes communicate via signals, including interrupt, suspend, and terminate signals; learn to send signals with control characters and the kill command, and manage foreground and background jobs.
Learn how the bash trap command intercepts signals and triggers actions like logging and cleanup, enabling graceful handling of interrupt and terminate signals in scripts.
Handle signals and process management in Linux shell programming using nohup and disown to keep background scripts running after logout. Explore foreground and background execution, redirection, and sandbox subshell isolation.
Learn how to create a symbolic link from /bin/sh to bash for shells, and review unix permissions, execute bits, and octal chmod values to manage default file and directory permissions.
Explore how umask sets default permissions for new files and directories and how to configure system-wide or per-user defaults using the global profile and bashrc.
Learn how to set default file permissions for newly created files and directories, manage hard and soft limits with limit, and implement a restricted rbash with a controlled path.
Want to feel like an awesome spy hacker similar to the one in the movies that opens a command line terminal and manages to complete complicated tasks using a few simple codes? Well, this can be a reality using BASH.
A huge chunk of a programmer’s time is wasted in trying to repeat codes and processes, especially when it comes to working with UNIX or Linux. The constant commands that are required to program or create systems is a tedious and long process.
Well, here’s how you can eliminate that and save a whole buncha time – BASH
Bourne Again Shell, more popularly known as BASH is a UNIX/Linux shell and a command line interpreter that runs commands from a standard input file. This shell comes with a nifty feature that allows you to reduce the amount of commands that you have to call personally by automating them.
Our Shell Scripting course has been specifically designed to teach you how to use BASH to shave hours from your coding practice. Learn how to write shell scripts, learn how command history, echo command and even variables work, along with how to automate simple and complex commands. This BASH tutorial doesn’t even require you to have previously worked with BASH. All it needs is for you to be familiar with UNIX or Linux and have a machine that runs UNIX or Linux – that’s it! That’s all you need to be on your way to learning automation.
The course starts at the very beginning including what is BASH, what are shells, what do you mean by shell scripts, customizing your shell, difference between a shell script and an interactive shell, command line-options, statements, loops and so much more.
In addition to providing you with theoretic information about BASH and Shell Scripting, the course will also give numerous examples at every step to get you familiar with how scripting works and what happens when you execute a certain script. Additionally, you will also be provided with all the scripts that were used by the instructor to try on your own.
Learn how to write well documented, modular, efficient and complex shell scripts, automate daily routines, basic programming concepts such as loops, commands and statements, how to effectively write command line processing, process management and even manipulate command-line functions.
So, what are you waiting for? Click Enroll and unleash the power of scripts!