AI-powered learning
Save this course
The Complete Guide to Bash Programming
Gain insights into Bash programming to automate daily tasks. Explore computer operations, developer tools, basic concepts, and hands-on exercises for a solid programming foundation.
4.5
154 Lessons
9h
Join 2.9 million developers at
Join 2.9 million developers at
LEARNING OBJECTIVES
- Learn about operating system from scratch
- Learn basics of Bash
- Learn how to use Bash commands in a shell
- Explore the features of Bash scripts
- Learn how to automate your daily tasks using bash scripts
Learning Roadmap
1.
Introduction
Introduction
Get familiar with Bash programming, its practical applications, and effective learning approaches.
2.
Origins of the OS
Origins of the OS
Look at the evolution of operating systems from early electromechanical computers to commercial use.
3.
Operating Systems
Operating Systems
12 Lessons
12 Lessons
Examine the fundamental workings of operating systems, multitasking, APIs, and GUI evolution.
4.
Application
Application
7 Lessons
7 Lessons
Apply your skills to manage programs, understand memory levels, and convert number systems.
5.
Bash Shell
Bash Shell
3 Lessons
3 Lessons
Take a closer look at Bash's development tools, command interpreter modes, and command-line interface.
6.
File System
File System
13 Lessons
13 Lessons
Follow the process of navigating and managing the file system in Bash.
7.
Command Information
Command Information
2 Lessons
2 Lessons
Piece together the parts of how to access command information and utilize Bash documentation.
8.
Files and Directories
Files and Directories
9 Lessons
9 Lessons
Learn how to use file and directory commands, manage permissions, and execute applications in Bash.
9.
Bash Extra Features
Bash Extra Features
12 Lessons
12 Lessons
Discover advanced Bash features such as GNU utilities, I/O redirection, pipelines, and logical operators.
10.
Scripts Features
Scripts Features
9 Lessons
9 Lessons
Master the steps to automate complex tasks using Bash scripting, with a focus on backups.
11.
Variables and Parameters
Variables and Parameters
16 Lessons
16 Lessons
Grasp the fundamentals of Bash variables, classifications, declarations, scopes, and array manipulation.
12.
Conditional Statements
Conditional Statements
13 Lessons
13 Lessons
Deepen your knowledge of Bash conditional statements, including if, case, and the [[ operator.
13.
Arithmetic Expressions and Operations
Arithmetic Expressions and Operations
8 Lessons
8 Lessons
Tackle integer arithmetic, number representations, and Bash operations in programming tasks.
14.
Bitwise Operations
Bitwise Operations
8 Lessons
8 Lessons
Master the steps to perform bitwise operations and explore practical applications in Bash.
15.
Logical Operations and Increments
Logical Operations and Increments
3 Lessons
3 Lessons
Step through logical operations, increments, and the ternary operator in Bash.
16.
Loop Operators
Loop Operators
11 Lessons
11 Lessons
Unpack the core of Bash loop constructs for efficient control flow and script management.
17.
Functions
Functions
10 Lessons
10 Lessons
Master the steps to using functions, managing variable scope, and avoiding alias conflicts in Bash.
18.
Package Manager
Package Manager
2 Lessons
2 Lessons
Enhance your skills in using Unix package managers to manage software installations and dependencies.
20.
Bash Scripts Tools
Bash Scripts Tools
4 Lessons
4 Lessons
Tackle essential tools and methods for writing, editing, and managing Bash scripts efficiently.
21.
APPENDIX
APPENDIX
2 Lessons
2 Lessons
Build on Bash execution across Windows and macOS for seamless scripting.
Certificate of Completion
Showcase your accomplishment by sharing your certificate of completion.
Complete more lessons to unlock your certificate
Developed by MAANG Engineers
ABOUT THIS COURSE
Learning to program computers by yourself is challenging, but we’ve got you! In this course, you’ll learn how to use Bash. Its features will help you solve your daily computer tasks—and even automate some of them!
This course covers the general principles of computer operations, developer tools and their requirements, and basic programming concepts in detail. It will also help you consolidate your new knowledge through exercises for each topic.
Moreover, the playground areas will give you hands-on practice for the exercises. Overall, this experience should be a great start to your programming journey.
ABOUT THE AUTHOR
Ilya Shpigor
Ilya Shpigor is a software developer and open source enthusiast.
Trusted by 2.9 million developers working at companies
A
Anthony Walker
@_webarchitect_
E
Evan Dunbar
ML Engineer
S
Software Developer
Carlos Matias La Borde
S
Souvik Kundu
Front-end Developer
V
Vinay Krishnaiah
Software Developer
Built for 10x Developers
No Passive Learning
Learn by building with project-based lessons and in-browser code editor


Personalized Roadmaps
The platform adapts to your strengths & skills gaps as you go


Future-proof Your Career
Get hands-on with in-demand skills


AI Code Mentor
Write better code with AI feedback, smart debugging, and "Ask AI"




MAANG+ Interview Prep
AI Mock Interviews simulate every technical loop at top companies


Free Resources