We may earn an affiliate commission when you visit our partners.
Course image
Udemy logo

Bash Shell Scripting

From Zero To Automation

Francesco Santi

Do you know any real and practical Bash Shell script?

There is a lot of  abstract Bash Scripting that  shows you isolated elements of bash programming.

Read more

Do you know any real and practical Bash Shell script?

There is a lot of  abstract Bash Scripting that  shows you isolated elements of bash programming.

However this can go only so far.  You will not be ready for real world programming in your job if you have a theory based knowledge.

In this Course We will cover ALL the basics of terminal and bash scripting thoroughly, but without wasting any time,

we will then Automate 6 Simple and Real Task with Bash Scripts that you can use in your everyday life as a programmer.

They are carefully selected to build all the skills you need in Bash Scripting.

For this Reason they are of incremental complexity.

We will present and explain in details a command or a practice in Bash Scripting ONLY when it will be used in one of our main real world scripts, and  we will build it together step by step, showing you the best practices when programming a real script.

In this way, not only  will you learn ALL the fundamental ( and even some advanced ) elements in Bash Scripting, but you will know how to apply those in a Real scenario to solve a Real Problem.

Everything is explained at a slow pace and thoroughly to make sure you can follow along. 

Even if you never used the command line, the First 2 Sections  will teach you all the tools necessary to use the command line and start writing your shell scripts, nothing important is left out, nothing useless is left in.

By the end of the course you'll be writing  your own Shell Scripts, in particular you will learn how to:

  • Use the command line

  • Automate tasks using Shell Scripts

  • Create and use variables in your scripts

  • Manipulate variables to a wide extent

  • Use Wildcards

  • Use Input and output Redirection

  • Source subshells

  • Make decisions by using if-else statements

  • Loop through files and folders

  • Make decision based on strings, variables or files

  • Use arithmetic expression

  • Use advanced computations with the BC command line environment

  • Scripts with parameters and how to "shift"

  • Change the Internal field separator plus why and when to do so.

  • Use Arrays

  • How to properly use your PATH, and a script to work with it

  • Create Shell Scripts that solves real world problems

  • and much more... 

You will write Scripts that:

  1. Move back any numbers of directories you want in the terminal

  2. Find the longest string inside any text file

  3. Performs computations that terminal normally does NOT allow

  4. Read files in your Linux system that have particular separators ( not the usual space )

  5. Get clear Information of files in your PATH, the most important environment variable of your system

  6. Use arrays to know how many times your files were modified during the day

Writing these scripts will allow you to develop an actual skill in creating scripts to solve real problems.

You can Become a Programmer in Bash Scripting who knows how to solve actual problems.

and You can start now.

Looking forward to see you there.

Francesco

Enroll now

What's inside

Learning objectives

  • Write your own shell scripts for automation
  • Strings, variables and files manipulation
  • Learn to automate 6 simple tasks on your computer with 6 shell scripts
  • If-else statements
  • Advanced arithmetic expressions
  • Loops through files and folders
  • The path environment variables
  • Input and output redirection
  • Arrays
  • Wildcards
  • And more...
  • Show more
  • Show less

Syllabus

Command Line Basics
Introduction and Basics
READ ME for NEW Students
Move around: CD. Completion: TAB. Hidden files: ls -a
Read more
Mac Unix Linux
Track Your Progress
Copy: Cp
Move, Remove, Copy files and folders around.
Access Files: Cat, Less, More
Print on the screen: Echo
Create Directories and Files: Mkdir, Touch
Wildcards
Variables
Variables Manipulation
Permanent Variables
Read from input: Read
Redirect the output
Redirect the error
Pipe
Grep
Brace Expansion
Permissions in the terminal
Change Permissions on Files
Bash Shell Basics
Track Your Progress 2 !
Our First Shell Script
If on Strings
If on Numbers and Files
Logic Conditions
For Loop
The BACK Script
BACK Script Intro
Subshells
The Source Command
The Type Command
Alias in Bash
Command Substitution
Parameters in the bash
short advise for you
Adding a Script to the PATH
Returning values and Functions
Exit Status
Functions
Variables scope in functions
The CALC Script
CALC Script Intro
The Problem with arithmetic in Bash
The bc environment
Redirect Input: Here Document
Redirect Input 2: Here String
Parameters in Bash Scripts
Parameters SHIFT
The IFS Script
IFS Script Intro
Read Multiple variables
Grep Command
The Internal Field Separator
Intro To the IFS Script
The IFS Script
The PATH Script
Intro to the PATH Script
The MAX_STRING Script
Intro To the MAX_STRING Script
The Pipe Command
The wc Command
The Strings Command
The MODIFICATION Script
Arrays
The Cut command
The Stat command in Linux
The Stat command in Mac Unix
The MODIFICATION Script Intro
The MODIFICATION Script, part 1
The MODIFICATION Script Part 2, a portable script
Conclusion

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
Teaches the basics of terminal and bash scripting thoroughly, ensuring a strong foundation for beginners
Focuses on practical applications by automating 6 simple tasks with Bash scripts
Covers a range of topics from variables and file manipulation to arithmetic expressions, loops, and arrays
Presents concepts and practices only when they are used in real-world scripts, ensuring practical relevance
Emphasizes best practices and proper scripting techniques

Save this course

Save Bash Shell Scripting: From Zero To Automation to your list so you can find it easily later:
Save

Reviews summary

Essential shell scripting

According to students, this course is an excellent introduction to Bash shell scripting for beginners. It covers basic to advanced concepts while taking a hands-on approach with engaging assignments. The instructor is knowledgeable and creates well-paced lessons which help students to understand the fundamentals and to apply them in practice. The course offers a solid foundation in shell scripting that is suitable for both beginners and intermediate learners.

Activities

Coming soon We're preparing activities for Bash Shell Scripting: From Zero To Automation. These are activities you can do either before, during, or after a course.

Career center

Learners who complete Bash Shell Scripting: From Zero To Automation will develop knowledge and skills that may be useful to these careers:
Machine Learning Engineer
Machine learning engineers design and build machine learning models that can learn from data and make predictions. This course can help you develop the skills needed to collect and prepare data, train machine learning models, and evaluate their performance. You will learn how to use the command line, write shell scripts, and use machine learning tools. These skills will help you become a more effective machine learning engineer.
Computer Programmer
Computer programmers write and maintain computer programs. This course can help you develop the skills needed to write code, debug errors, and test software. You will learn how to use the command line, write shell scripts, and use programming languages. These skills will help you become a more effective computer programmer.
Software Engineer
Software engineers design, develop, and maintain software applications. This course can help you develop the skills needed to write code, debug errors, and test software. You will learn how to use the command line, write shell scripts, and use version control systems. These skills will help you become a more effective software engineer.
Network Engineer
Network engineers design, build, and maintain computer networks. This course can help you develop the skills needed to configure and manage routers, switches, and firewalls. You will learn how to use the command line, write shell scripts, and use network management tools. These skills will help you become a more effective network engineer.
Cloud Engineer
Cloud engineers design, build, and maintain cloud computing systems. This course can help you develop the skills needed to manage cloud resources, provision and configure virtual machines, and troubleshoot problems. You will learn how to use the command line, write shell scripts, and use cloud computing tools. These skills will help you become a more effective cloud engineer.
IT Security Analyst
IT security analysts protect computer systems and networks from unauthorized access, use, disclosure, disruption, modification, or destruction. This course can help you develop the skills needed to identify and mitigate security risks, investigate security incidents, and implement security controls. You will learn how to use the command line, write shell scripts, and use security tools. These skills will help you become a more effective IT security analyst.
Data Scientist
Data scientists use data to solve business problems. This course can help you develop the skills needed to collect, analyze, and interpret data. You will learn how to use the command line, write shell scripts, and use data analysis tools. These skills will help you become a more effective data scientist.
Data Analyst
Data analysts collect, analyze, and interpret data to help businesses make informed decisions. This course can help you develop the skills needed to clean and prepare data, perform statistical analysis, and visualize data. You will learn how to use the command line, write shell scripts, and use data analysis tools. These skills will help you become a more effective data analyst.
Database Administrator
Database administrators manage and maintain databases, ensuring that they are running smoothly and securely. This course can help you develop the skills needed to create and manage databases, write SQL queries, and troubleshoot problems. You will learn how to use the command line, write shell scripts, and use database management tools. These skills will help you become a more effective database administrator.
Web Developer
Web developers design and develop websites. This course can help you develop the skills needed to create and maintain websites, including HTML, CSS, and JavaScript. You will learn how to use the command line, write shell scripts, and use web development tools. These skills will help you become a more effective web developer.
Systems Administrator
Systems administrators manage and maintain computer systems, ensuring that they are running smoothly and securely. This course can help you develop the skills needed to manage users, install and configure software, and troubleshoot problems. You will learn how to use the command line, write shell scripts, and use system monitoring tools. These skills will help you become a more effective systems administrator.
DevOps Engineer
DevOps engineers work to bridge the gap between development and operations teams, ensuring that software is deployed and maintained efficiently. This course can help you develop the skills needed to automate tasks, troubleshoot problems, and manage infrastructure. You will learn how to use the command line, write shell scripts, and use version control systems. These skills will help you become a more effective DevOps engineer.
Business Analyst
Business analysts analyze business processes and make recommendations for improvement. This course can help you develop the skills needed to gather and analyze data, identify problems, and develop solutions. You will learn how to use the command line, write shell scripts, and use business analysis tools. These skills will help you become a more effective business analyst.
Project Manager
Project managers plan, execute, and close projects. This course can help you develop the skills needed to manage projects, including planning, scheduling, and risk management. You will learn how to use the command line, write shell scripts, and use project management tools. These skills will help you become a more effective project manager.
Technical Writer
Technical writers create instructions and manuals for products and services that help users understand how to use them effectively. This course can help you develop the skills needed to write clear and concise documentation, which is a key skill for technical writers. You will learn how to use the command line, automate tasks with shell scripts, and create and use variables in your scripts. These skills will help you become a more efficient and effective technical writer.

Reading list

We've selected 11 books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Bash Shell Scripting: From Zero To Automation.
Is specifically designed for beginners, providing a clear and concise introduction to Bash scripting. It covers fundamental concepts such as variables, control structures, and input/output, making it ideal for those starting their journey in shell scripting.
Thoroughly introduces the Linux command line, covering essential commands, file management, text processing, networking, and shell scripting. It provides a comprehensive foundation for understanding the basics of the terminal and shell scripting.
The official Bash reference manual provides authoritative documentation on the language's syntax, commands, and features. It comprehensive resource for understanding the technical details and specifications of Bash, complementing the course's practical approach.
Provides a comprehensive overview of shell programming, covering both Bash and other Unix shells. It includes in-depth explanations of shell syntax, commands, and utilities, making it suitable for beginners and experienced users alike.
This comprehensive book provides a step-by-step guide to mastering the Bash shell. It covers advanced topics such as shell functions, regular expressions, and debugging, making it suitable for experienced users looking to enhance their skills.
Provides a comprehensive reference for Bash scripting, covering advanced topics such as shell programming, debugging techniques, and performance optimization. It valuable resource for experienced users looking to enhance their proficiency and develop complex scripts.
Focuses on practical applications of shell scripting. It provides numerous real-world examples and case studies, demonstrating how to use Bash for system administration, data processing, and scripting tasks.
Provides advanced practices and in-depth explanations of concepts such as shell parameters, arrays, functions, and debugging techniques, making it suitable for individuals with prior knowledge in Bash scripting.
Offers a comprehensive collection of recipes for various shell scripting tasks. It provides practical solutions for file management, text processing, system administration, and networking, making it a useful reference for both beginners and experienced users.
While this book primarily covers Sed and Awk, it also includes a chapter on Bash scripting. It provides a thorough understanding of how to use these tools for text processing and manipulation, which can complement the course's coverage of shell scripting.
While not specifically focused on Bash scripting, this book provides a broader perspective on the command line and its power. It covers topics such as command-line history, scripting, and customization, enhancing the understanding and appreciation of shell scripting.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Here are nine courses similar to Bash Shell Scripting: From Zero To Automation.
The Bash Shell and Basic Scripting in Linux
Most relevant
Linux and Bash for Data Engineering
Most relevant
Bash Scripting and Shell Programming (Linux Command Line)
Most relevant
Linux Shell Scripting: A Project-Based Approach to...
Most relevant
Linux Commands & Shell Scripting
Most relevant
Shell Scripting: Discover How to Automate Command Line...
Most relevant
Linux: Introduction to Shell Scripting for DevOps
Most relevant
Scripting for Security with Bash
Most relevant
Bash Shell Scripting Tutorial for Beginners
Most relevant
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2024 OpenCourser