Terminal / Command Line Skills
4.3 (3 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
45 students enrolled
Wishlisted Wishlist

Please confirm that you want to add Terminal / Command Line Skills to your Wishlist.

Add to Wishlist

Terminal / Command Line Skills

Learn how to transfer and manage files and manage MySQL databases with ease from the command line / terminal
4.3 (3 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
45 students enrolled
Created by Marc Isaacson
Last updated 4/2016
Current price: $10 Original price: $30 Discount: 67% off
5 hours left at this price!
30-Day Money-Back Guarantee
  • 1.5 hours on-demand video
  • 4 Articles
  • 13 Supplemental Resources
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
What Will I Learn?
  • Create a key pair.
  • Transfer files from and to your computer and a remote computer.
  • Manage file permissions and access.
  • Organize file structure.
  • Create a MySQL Database
  • Create a Table in a MySQL Database
  • Create a User for a MySQL Database
  • Manage Privileges for a User of a MySQL Database
  • Manage Backing up and Restoring a MySQL Database
View Curriculum
  • You must have some type of command line / terminal functionality set up on your computer. This course will NOT cover enabling command line functionality. If you are a GNU/*nix user or Mac user you've already got terminal access. If you are a Windows user, it is recommended that you install something like Cygwin, but you are free to use any tool of your choosing as long as it emulates a *nix environment.
  • Your account should already be set up to access the remote server. This course will NOT cover how to set up the remote server to allow you to access it.
  • You should be added to the sudoers file on the remote server. Alternatively, and far less preferably, you should have root access to the remote server.
  • You must have an account with elevated privileges to a MySQL server

You've gotten a new web development client and you are totally psyched!

Wait, what's that? You need to access the server through a terminal and ssh?

Have no fear! You can do it!

Don't fear the terminal! Whatever you can do through a graphical (S)FTP interface you can also do on the command line.

This course will quickly get you up to speed on all the typical commands you will use to:

  1. Create a key pair
  2. Connect to a remote computer
  3. Navigate the through the directory structure
  4. Perform file managements tasks like creating directories; copying and moving files; setting permissions on directories and files
  5. Create and manage databases and database users

Just follow sequentially through the lectures and all of the above and more will become clear.

Course Structure

Each command is presented in a separate lecture to make it easy to digest and easy to find again when you want to use the course like a reference guide.

Each command is fully demonstrated in a High Definition screen cast.

Satisfaction Guarantee

I personally guarantee that after you take this course you will be able to complete all the tasks you were formerly able to do only through a graphical interface. If you find that you are not able to do the things you could have otherwise done with a graphical interface, I will work one-on-one with you to help you through your challenge and will add that information to the course.

Please Note

The skills you will be learning in this course are for working in a *nix operating system environment.

Click the "Take This Course" button now and get ready to level up your command line skills!

Who is the target audience?
  • You are used to using a graphical interface, such as an FTP client (for example, WinSCP or Filezilla) to manage files on a remote server, but now you need to be able to use the command line to perform those same types of tasks.
  • You will be accessing a server that is running some distribution of Linux. You are not working on a Windows server.
  • You are looking for a basic introduction to the command line; you are not looking for a comprehensive curriculum on doing all things command line.
  • You are a command line newbie; you are not already well-versed and comfortable using the command line.
  • You are new to using the Command Line to perform basic management of MySQL Databases
  • You had previously been doing this basic MySQL database management through a graphical user interface, such as phpMyAdmin
  • This course is not for people looking to learn to: define views or stored procedures; write MySQL queries; build a MySQL server; acquire advanced MySQL skills
Compare to Other Command Line Courses
Curriculum For This Course
43 Lectures
3 Lectures 03:48

Having to use the command line instead of a graphical user interface (GUI) can induce anxiety, as one has to operate in an unfamiliar environment. But, there's no need to fear the terminal! Even if you weren't alive when MS-DOS was in its heyday (yes, even before Windows 3.1) and have only ever used a GUI, you will be able to follow along step-by-step as I show you the most useful commands to transfer and manage files.

Preview 01:13

Even though my first introduction to a computer was a Commodore Vic-20, I was a bit nervous about having to switch from using a graphical FTP client to using the terminal. But, I found out pretty quickly that it wasn't too bad at all! Now I love to use the terminal and the command line. I look forward to helping you move from GUI to terminal with ease.

Preview 01:42

The course is organized to take you step-by-step from setting up the pieces on your local computer to managing files on a remote server. Just proceed sequentially through the lectures in the "Most Used Commands" sections and you will be transferring and managing files from the command line before you know it!

Preview 00:53
File Management Commands
23 Lectures 52:12

ls - list directory contents

mkdir - make directories

rmdir - remove empty directories

cd - change directory

ssh-keygen - authentication key generation, management and conversion

Understanding *nix Users

sudo - execute a command as another user

chown - change file owner and group

chgrp - change group ownership

Understanding *nix permissions

chmod - change file mode bits

ssh-copy-id - use locally available keys to authorize logins on a remote machine

scp - secure copy (remote file copy program)

ssh - OpenSSH SSH client (remote login program)

mv - move (rename) files

cp - copy files and directories

rm - remove files or directories

Feel free to solve the problems either in your head or by testing them in the terminal.

Putting the Commands Into Practice
6 questions
Extra File Management Commands
3 Lectures 05:43
wget - a non-interactive network downloader

tar - archiving utility

find - search for files in a directory hierarchy
Basic Database Management Tasks
6 Lectures 17:06
Before you can accomplish any of the tasks in this section, you must first sign in to the MySQL Server. It’s a snap to do!
Sign In To the MySQL Server

This lecture will look at creating a database and deleting a database. You could probably almost guess the commands you have to use just by looking at those two sentences! You’ll be right on your way in no time.

Administer a MySQL Database

Tables are what stores the data in a database. Many content management systems will automatically create tables for you when you install them. This lecture will give you a brief introduction on how you can create them on your own.

I spend additional time in this lecture explaining how I used the documentation so that you can begin to understand how to interpret the significance of the way the grammar for the commands is written.

Administer a Table in a MySQL Database

Creating users is easy! Just be careful that you follow the structure of the command closely. Many people make some small mistakes that create big problems.
Create a User of a MySQL Database

You must make sure that you grant the necessary privileges to the specific User you have created. Make sure that you specify the User in the exact same way you created it.
Manage User Privileges in a MySQL Database

Create a MySQL Database and User
2 questions

Solidify your understanding and build your skills by creating a Database, a User and assigning Privileges as specified in the lecture

Exercise: Create a MySQL Database and a User
Database Backup and Recovery
2 Lectures 02:14
The most precious asset on any site is its data. Remember, if it’s not backed up, it doesn’t exist!
Back Up and Restore a MySQL Database

Make sure that you know how to back up and restore a database now! It’s too late to learn it when you actually need it.
Exercise: Back Up and Restore a MySQL Database
Optional Advanced Command Line Database-fu
3 Lectures 04:05

You may find that certain queries you are running could benefit from being able to access a table more efficiently. Adding an index can save a lot of CPU cycles when selecting data from a table and is an example of something you accomplish by altering an existing table.

This lecture covers adding an index as well as some other typical table alters.

Alter a MySQL Table

Prepare to be amazed as I show you some clever techniques to harvest information from your database and to accomplish some tedious tasks with the power of the command line!

  1. Dump the output of a query to a text file.
  2. Create a script to convert all the tables in a database to the InnoDB engine.
Use the --execute Option of the mysql Command in Clever Ways

Explain what the given commands are doing.

Quiz: Test Your DB-fu
Course Feedback
2 Lectures 00:00

I work hard to make this course the best that it can be and I want it to be absolutely delightful for you. The best way for me to ensure that I am meeting these goals is to hear from you! Let me know what you like and what you'd like to see improved; I really do listen!

Preview 1 page

It is entirely at your discretion whether you leave a review and it is important that you are able to leave your honest feedback. I would never engage in behavior to coerce or coach you into giving a particular rating. Your review means a lot to me and to all prospective students of the course and I appreciate your willingness to take the time to rate and comment on the course.

Preview 1 page
Bonus Section
1 Lecture 00:04

I appreciate you being one of my students and I want you to always have access to a better price on my courses than Udemy will ever offer you.

Bonus Lecture: Get any of my courses at a discount
About the Instructor
Marc Isaacson
4.1 Average rating
21 Reviews
1,522 Students
2 Courses
Drupal Application Architect, BS Comp Sci, MST Mathematics

I was an AS/400 RPG application developer from 1989 - 2001. Then I pursued some other life interests, including teaching High School math, before returning to programming in 2010. I spent approximately 6 months, 7 days a week for 12 hours a day teaching myself to use the Drupal content management system prior to launching my web development business in July of 2010. Since that time I have become a highly sought after Drupal web developer. I specialize in using Drupal as a framework to build custom web applications for clients.

My "Drupal nick" is vegantriathlete.

I am both a vegan and a triathlete and successfully completed my first IronMan distance triathlon on August 2, 2015.

If there is anything you would like to know from or about me or anything you would like to tell me, please do get in touch!