Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.


Hands-on Introduction to Linux Commands and Shell Scripting

IBM via Coursera


Unlock Unlimited Opportunities: Get 50% Off Your First Month of Coursera Plus
This course provides a practical understanding of common Linux / UNIX shell commands. In this beginner friendly course, you will learn about the Linux basics, Shell commands, and Bash shell scripting. You will begin this course with an introduction to Linux and explore the Linux architecture. You will interact with the Linux Terminal, execute commands, navigate directories, edit files, as well as install and update software. Next, you’ll become familiar with commonly used Linux commands. You will work with general purpose commands like id, date, uname, ps, top, echo, man; directory management commands such as pwd, cd, mkdir, rmdir, find, df; file management commands like cat, wget, more, head, tail, cp, mv, touch, tar, zip, unzip; access control command chmod; text processing commands - wc, grep, tr; as well as networking commands - hostname, ping, ifconfig and curl. You will then move on to learning the basics of shell scripting to automate a variety of tasks. You’ll create simple to more advanced shell scripts that involve Metacharacters, Quoting, Variables, Command substitution, I/O Redirection, Pipes & Filters, and Command line arguments. You will also schedule cron jobs using crontab. The course includes both video-based lectures as well as hands-on labs to practice and apply what you learn. You will have no-charge access to a virtual Linux server that you can access through your web browser, so you don't need to download and install anything to complete the labs. You’ll end this course with a final project as well as a final exam. In the final project you will demonstrate your knowledge of course concepts by performing your own Extract, Transform, and Load (ETL) process and create a scheduled backup script. This course is ideal for data engineers, data scientists, software developers, and cloud practitioners who want to get familiar with frequently used commands on Linux, MacOS and other Unix-like operating systems as well as get started with creating shell scripts.


  • Introduction to Linux
    • In this module, you will learn about the basics of Linux. You will be able to summarize the origins of the Linux operating system and list its key features and use cases. You will learn what a Linux distribution is, the names of popular distributions, and their key characteristics. You will also be able to explain the Linux architecture, interact with a Linux system using the terminal, and navigate directories using paths and shortcuts. This module will also teach you how to create and edit text files using text editors such as nano and Vim. Lastly, you will learn how to use a software package manager to install and updates on a Linux system.
  • Introduction to Linux Commands
    • In this module, you will learn how to use common Linux commands. You will learn what a shell and shell commands are, and how to use commands to do various tasks in Linux. This module will teach you how to use informational commands to find relevant information about your system, navigation commands to navigate files and directories, and management commands to create, delete, copy, and move files and directories. You will also learn to sort and view files in useful ways and extract specific lines and fields from your files. You will be able to use networking commands to examine your network configuration and evaluate, identify, and retrieve data from URLs. Finally, this module will cover file archiving and compression commands.
  • Introduction to Shell Scripting
    • In this module, you will learn the basics of shell scripting. You will learn what a script is and when to use scripts. You will be able to describe the shebang interpreter directive and create and run a simple shell script. Additionally, this module will teach you how to use pipes and filters and set shell and environment variables. By the end of this module, you will also be able to list features of Bash shell scripting and use crontab to schedule cron jobs, understand the cron syntax, and view and remove cron jobs.
  • Final Project and Final Exam
    • In this module, you will complete a practice project in which you create an automated Extract, Transform, Load (ETL) process to extract daily weather forecasts and observed weather data. You will schedule this process to run automatically at a set time daily and learn how to create a script to measure forecast accuracy. In your peer-graded final project, you will create a scheduled backup script. Finally, you will demonstrate the knowledge you've gained by taking a final graded exam.

Taught by

Rav Ahuja and Ramesh Sannareddy


1.0 rating, based on 1 Class Central review

4.7 rating at Coursera based on 1191 ratings

Start your review of Hands-on Introduction to Linux Commands and Shell Scripting

  • Anonymous
    Everything that follows, is just my own personal opinion, if not stated otherwise. It is based on my observations and interactions with teaching staff in the course discussion forums (for the last few months). This is a very poorly executed course.…

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.