EdX

Shell Programming - A necessity for all Programmers (edX)

Offered by IIT Bombay, IITBombayX,
Shell Programming - A necessity for all Programmers (edX)

Unleash your Linux scripting skills and amaze others with your productivity level. Various programming languages have gained popularity since 1970. Starting with Assembly, C, C++, and moving towards Java, Python, and finally building of backend and frontend frameworks, all of these became popular and were or getting replaced with some other language or framework. Shell programming (scripting) is the only programming language that has been popular and the choice of programmers, testers, system administrators, etc., from 1970 to date (21st century).

Class Deals by MOOC List - Click here and see EdX's Active Discounts, Deals, and Promo Codes.

Even today, all of us rely heavily on shell programming or its variants for our day to day tasks, configuring software environments, and software automation. ****
Scripting is a vehicle to automate and it is ubiquitous in any small to large scale software development. Apart from programming, various phases of software development include unit testing, producing software builds, configuration, integration testing, etc. In all these phases (from development to production), automation is an essential key to faster delivery, hence, having less waiting time. This course will introduce you to the programming aspects of the most popular Linux shell, which has been used for the last 50 years, older than any programming language that you have heard of.
Participants taking this course will be able to use the terminal (shell commands) with confidence, thus, increasing their productivity and saving effort in performing tedious and redundant tasks.

What you'll learn

  • Write shell scripts
  • Handle text, files, and directories
  • Handle input/output
  • Changing file ownership and permissions
  • Handle processes
  • Substitutions: filename, variable command, and arithmetic
  • Conditional statement, loops,
  • Functions
  • Grep: Text filters and regular expressions
  • Shell tools: find, sed, lsof, curl, wget, ssh
  • Introduction to awk scripts
  • Other Utilities
Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Java Programming Fundamentals (edX) EdX
Galileo University,GalileoX

Java Programming Fundamentals (edX)

Your career as a program developer starts here. Gain entry-level programing skills in Java language, and prepare yourself to handle any task that is required in any programming job. Java is one of the most in-demand programming languages today. This course is designed to provide students the basic skills and knowledge on Java.

Self Paced
Self-Paced
Probability and Statistics in Data Science using Python (edX) EdX
University of California, San Diego,UC San DiegoX

Probability and Statistics in Data Science using Python (edX)

Using Python, learn statistical and probabilistic approaches to understand and gain insights from data. The job of a data scientist is to glean knowledge from complex and noisy datasets. Reasoning about uncertainty is inherent in the analysis of noisy data. Probability and Statistics provide the mathematical foundation for such reasoning.

Self Paced
Self-Paced
Computing in Python II: Control Structures (edX) EdX
Georgia Institute of Technology,GTx

Computing in Python II: Control Structures (edX)

Learn about control structures, one of the most powerful parts of programming. This course covers conditionals, loops, functions, and error handling, specifically in Python but with broader applicability to other languages as well. Building on your prior knowledge of variables and operators, this course gets into the meat of programming. Organized into five chapters, this course starts by covering the fundamentals of what control structures are and what they do, then moves on to four common control structures in Python.

Self Paced
Self-Paced
Using Python for Research (edX) EdX
HarvardX,Harvard University

Using Python for Research (edX)

Take your introductory knowledge of Python programming to the next level and learn how to use Python 3 for your research. This course bridges the gap between introductory and advanced courses in Python. While there are many excellent introductory Python courses available, most typically do not go deep enough for you to apply your Python skills to research projects.

Self Paced
Self-Paced
Data Structures & Algorithms I: ArrayLists, LinkedLists, Stacks and Queues (edX) EdX
Georgia Institute of Technology,GTx

Data Structures & Algorithms I: ArrayLists, LinkedLists, Stacks and Queues (edX)

Work with the principles of data storage in Arrays, ArrayLists & LinkedList nodes. Understand their operations and performance with visualizations. Implement low-level linear, linked data structures with recursive methods, and explore their edge cases. Extend these structures to the Abstract Data Types, Stacks, Queues and Deques.

Self Paced
Self-Paced
Computing in Python I: Fundamentals and Procedural Programming (edX) EdX
Georgia Institute of Technology,GTx

Computing in Python I: Fundamentals and Procedural Programming (edX)

Learn the fundamentals of computing in Python, including variables, operators, and writing and debugging your own programs. This course starts from the beginning, covering the basics of how a computer interprets lines of code; how to write programs, evaluate their output, and revise the code itself; how to work with variables and their changing values; and how to use mathematical, boolean, and relational operators.

Self Paced
Self-Paced
Introduction to Object-Oriented Programming with Java III: Exceptions, Data Structures, Recursion, and GUIs (edX) EdX
Georgia Institute of Technology,GTx

Introduction to Object-Oriented Programming with Java III: Exceptions, Data Structures, Recursion, and GUIs (edX)

Learn how to create and use exceptions, data structures, recursion, and graphical user-interfaces (GUIs). This course provides students with the knowledge to handle and even create exceptions to achieve graceful error handling in programs. They will also create and utilize data structures, including lists and files. Students will also learn about recursion and how it can be a useful approach to repetition in a program. Finally, students will learn how to develop basic graphical user interfaces (GUIs) using JavaFX.

Self Paced
Self-Paced
Python Basics for Data Science (edX) EdX
IBM

Python Basics for Data Science (edX)

This Python course provides a beginner-friendly introduction to Python for Data Science. Practice through lab exercises, and you'll be ready to create your first Python scripts on your own! Kickstart your learning of Python for data science, as well as programming in general with this introduction to Python course. This beginner-friendly Python course will quickly take you from zero to programming in Python in a matter of hours and give you a taste of how to start working with data in Python.

Self Paced
Self-Paced
Data Structures & Algorithms III: AVL and 2-4 Trees, Divide and Conquer Algorithms (edX) EdX
Georgia Institute of Technology,GTx

Data Structures & Algorithms III: AVL and 2-4 Trees, Divide and Conquer Algorithms (edX)

Learn more complex tree data structures, AVL and (2-4) trees. Investigate the balancing techniques found in both tree types. Implement these techniques in AVL operations. Explore sorting algorithms with simple iterative sorts, followed by Divide and Conquer algorithms. Use the course visualizations to understand the performance.

Self Paced
Self-Paced
Introduction to Object-Oriented Programming with Java I: Foundations and Syntax Basics (edX) EdX
Georgia Institute of Technology,GTx

Introduction to Object-Oriented Programming with Java I: Foundations and Syntax Basics (edX)

Learn the foundational basics of the Java programming language. This course provides an introduction to the Java programming language. It gives students a foundational overview and history of Java, and students will learn about the language’s basic syntax. At the end, they will be able to develop interactive console programs with basic data processing and formatting capabilities.

Self Paced
Self-Paced