An open API service indexing awesome lists of open source software.

https://github.com/maaworld/bash-programming-expert-a2z

Bash Programming Expert - A2Z Series (Deep-dive)
https://github.com/maaworld/bash-programming-expert-a2z

bash-programming bash-script chhirolya-technologies free-for-all linux-kernel maa-world-foundation open-source programmers-worldwide-community software-engineer

Last synced: 12 days ago
JSON representation

Bash Programming Expert - A2Z Series (Deep-dive)

Awesome Lists containing this project

README

          

---
description: >-
The most critical software that runs on a computer is an operating system
(OS).
icon: terminal
---

# Welcome | Course Introduction

\---

{% hint style="info" %}
**There are no particular prerequisites for this course. You just need a passion to learn programming. If **_**you are a beginner, don’t worry!**_
{% endhint %}

## Module 1: Structure

This module contains five chapters:

1. **Introduction** explains the hurdles faced by programmers and the different approaches used by the authors.
2. **Origins of the OS** explains the importance of operating systems and what electromechanical, relay, and electrical computers are.
3. **Operating Systems** explains the working of OSs, features of modern OSs, and the graphical user interface (GUI).
4. **Application** teaches us about the units of information and levels of computer memory. It explains machine code, source code, and how the compiler and interpreter works.
5. **Bash Shell** explains the development tools needed for using the Bash language, modes of interpreters, and CLI.

## Module 2: Structure

This module contains thirteen chapters:

1. **File System** explains directory structures, different commands, and logic expressions.
2. **Command Information** explains how to fetch details.
3. **Bash Extra Features** explains Unix design, GNU utilities, I/O redirection, and many other features of Bash.
4. **Script Features** explains why we need scripts, the parameters of the script, and how to use the script with other commands.
5. **Variables and Parameters** explains variables, their declaration mechanism, types of variables, and indexed array.
6. **Conditional Statements** provides implementation and a detailed explanation of conditional statements.
7. **Arithmetic Expressions and Operations** explains the one's and two's complement, different operators, and arithmetic operations.
8. **Bitwise Operations** explains how bitwise AND, OR, and XOR work in detail.
9. **Logical Operations and Increments** explains how logical operations can help us compare numbers and how increment and decrement work in Bash.
10. **Loop Operators** explains how loops work and where to use them.
11. **Functions** explains functions and how they work, the difference between functions and aliases, and the scope of functions.
12. **Package Manager** explains the software installation process and how to install, remove, and update packages.
13. **Bash Scripts Tools** explains the tools needed for Bash and how to launch a source code editor using a terminal.

## Module 3: Structure

This module contains four chapters, namely:

1. **Core Bash** explains quoting in Bash, globbing, special characters, basic redirection, and pipes.
2. **Scripting Bash** explains shell scripts, tests, loops, and exit codes. It also gives details of subshells and internal field separators (IFS).
3. **Bash in Practice** explains the readline library, how to set up the prompt, here docs, and Bash's history feature.
4. **Advanced Bash** gives us the details of job controls, traps, signal, and string manipulation. It also explains the Bash flags that are useful for debugging.

## Module 4: Structure

This module contains eight chapters:

1. **Introduction** explains a brief introduction of shell and Linux. It also introduces the command line and other commonly used Bash commands.
2. **Navigation Commands** explains pathnames, symbolic links, hard links, and different directory commands.
3. **File Manipulation Commands** explores commands to create, remove, open, move, copy, and zip a file in Bash.
4. **Permission Commands** explains commands that assist in setting or removing permissions.
5. **Filtering and Searching Commands** explains the searching, sorting, and filtering of files in Bash. It also explains REGEX, GREP, ECREP**,** and FGREP**.**
6. **System & Process Commands** explains processes, the difference between jobs and processes, and how to kill any process.
7. **Power of Bash** explains how to install and upgrade packages using the CLI, and use of Git with Bash.
8. **An Overview of Commands** explores a concise cheatsheet for some commands used in Linux.