Acerca de este Curso
Unix forms a foundation that is often very helpful for accomplishing other goals you might have for you and your computer, whether that goal is running a business, writing a book, curing disease, or creating the next great app. The means to these goals are sometimes carried out by writing software. Software can’t be mined out of the ground, nor can software seeds be planted in spring to harvest by autumn. Software isn’t produced in factories on an assembly line. Software is a hand-made, often bespoke good. If a software developer is an artisan, then Unix is their workbench. Unix provides an essential and simple set of tools in a distraction-free environment. Even if you’re not a software developer learning Unix can open you up to new methods of thinking and novel ways to scale your ideas. This course is intended for folks who are new to programming and new to Unix-like operating systems like macOS and Linux distributions like Ubuntu. Most of the technologies discussed in this course will be accessed via a command line interface. Command line interfaces can seem alien at first, so this course attempts to draw parallels between using the command line and actions that you would normally take while using your mouse and keyboard. You’ll also learn how to write little pieces of software in a programming language called Bash, which allows you to connect together the tools we’ll discuss. My hope is that by the end of this course you be able to use different Unix tools as if they’re interconnecting Lego bricks.

Curso 100 % en línea

Comienza de inmediato y aprende a tu propio ritmo.
Beginner Level

Nivel principiante


Aprox. 18 horas para completar

Sugerido: 4 weeks, 4 hours per week
Comment Dots


Subtítulos: English, Spanish, German, Chinese (Simplified)

Habilidades que obtendrás

Bash (Unix Shell)GithubUnixShell Script

Curso 100 % en línea

Comienza de inmediato y aprende a tu propio ritmo.
Beginner Level

Nivel principiante


Aprox. 18 horas para completar

Sugerido: 4 weeks, 4 hours per week
Comment Dots


Subtítulos: English, Spanish, German, Chinese (Simplified)

Syllabus - What you will learn from this course


5 hours to complete

Unix and Command Line Basics

This week we'll help you get access to Unix (you may already be using it), and you'll start using the command line. We'll draw parallels between using your mouse and keyboard with your computer's graphics versus only using the command line....
1 video (Total 1 min), 13 readings, 1 quiz
Video1 videos
Reading13 readings
The Unix Workbench Book10m
What is Unix?10m
Mac & Ubuntu Users10m
Hello Terminal!45m
Hello Terminal! Exercises10m
Navigating the Command Line45m
Navigating the Command Line Exercises10m
Creation and Inspection45m
Creation and Inspection Exercises10m
Migration and Destruction45m
Migration and Destruction Exercises10m
Quiz1 practice exercises
Command Line Basics20m


3 hours to complete

Working with Unix

Now we'll get into the power of different Unix tools. We'll walk through several scenarios where you could use Unix to perform tasks at a much faster speed than you would be able to normally....
1 video (Total 0 min), 16 readings, 1 quiz
Video1 videos
Reading16 readings
Self-Help Exercises10m
Get Wild10m
Get Wild Exercises10m
Regular Expressions10m
Character Sets10m
Escaping, Anchors, Odds, and Ends10m
Search Exercises10m
Customizing Bash10m
Pipes Exercises10m
Quiz1 practice exercises
Working with Unix20m


5 hours to complete

Bash Programming

During this week we'll unleash the command line's usefulness as a programming language. By the end of this week you'll be writing your own little computer programs that you can use on the command line....
1 video (Total 1 min), 25 readings, 1 quiz
Video1 videos
Reading25 readings
Math Exercises10m
Variables Exercises10m
User Input10m
User Input Exercise10m
Conditional Execution10m
Conditional Expressions10m
If and Else10m
Logic and If/Else Exercises10m
Arrays Exercises10m
Braces Exercise10m
Loops Exercises10m
Writing Functions10m
Getting Values from Functions10m
Functions Exercises10m
The Unix Philosophy10m
Making Programs Executable10m
Environmental Variables10m
Writing Programs Exercises10m
Quiz1 practice exercises
Bash Programming20m


5 hours to complete

Git and GitHub

First you'll learn how to use Git, which is like "track changes" for your code and plain text files, but much more powerful. We'll then explore how to use Git with GitHub, a social coding network where you can publish you projects and explore other's code. ...
1 video (Total 1 min), 16 readings, 2 quizzes
Video1 videos
Reading16 readings
What are Git and GitHub?10m
Setting Up Git and GitHub10m
Getting Started with Git10m
Git Exercises10m
Gitting Help, Logs, and Diffs10m
Ignoring Files10m
Important Git Features Exercises10m
Branching, Part 110m
Branching, Part 210m
Branching Exercises10m
Pull Requests10m
GitHub Exercises10m
Quiz1 practice exercises
Git & GitHub10m
2 hours to complete


Finally we'll set up a cloud computing environment so we can explore how computers communicate with each other using the internet....
11 readings, 1 quiz
Reading11 readings
Introduction to Cloud Computing10m
Setting Up DigitalOcean10m
Connecting to the Cloud10m
Moving Files In and Out of the Cloud10m
Talking to Other Servers10m
Automating Tasks10m
Cloud Computing Exercises10m
Shutting Down a Server10m
Next Steps10m
Giving Feedback10m
Using This Book10m
Quiz1 practice exercises
Direction Signs


started a new career after completing these courses


got a tangible career benefit from this course

Top Reviews

By KSJan 29th 2018

A wonderful course! Answered so many questions I had and gave me a solid background in Git, Bash, makefiles, and working from the cloud. I will definitely be using these skills in my job search!

By LSSep 11th 2017

It is suitable for Unix/Linux beginners who are new to shell. It introduces popular code sharing and merging tool GitHub, which most programmers would find very useful in software development.



Sean Kross

Department of Biostatistics

Jeff Leek, PhD

Associate Professor, Biostatistics

Brian Caffo, PhD

Professor, Biostatistics

Roger D. Peng, PhD

Associate Professor, Biostatistics

About Johns Hopkins University

The mission of The Johns Hopkins University is to educate its students and cultivate their capacity for life-long learning, to foster independent and original research, and to bring the benefits of discovery to the world....

Frequently Asked Questions

  • Once you enroll for a Certificate, you’ll have access to all videos, quizzes, and programming assignments (if applicable). Peer review assignments can only be submitted and reviewed once your session has begun. If you choose to explore the course without purchasing, you may not be able to access certain assignments.

  • If you pay for this course, you will have access to all of the features and content you need to earn a Course Certificate. If you complete the course successfully, your electronic Certificate will be added to your Accomplishments page - from there, you can print your Certificate or add it to your LinkedIn profile. Note that the Course Certificate does not represent official academic credit from the partner institution offering the course.

  • Yes! Coursera provides financial aid to learners who would like to complete a course but cannot afford the course fee. To apply for aid, select "Learn more and apply" in the Financial Aid section below the "Enroll" button. You'll be prompted to complete a simple application; no other paperwork is required.

More questions? Visit the Learner Help Center