WDI Fundamentals Unit 6
We can perform actions using the command line by entering commands. There is a command to perform virtually any action you can imagine on your computer! There are commands to open an application, create new files, copy files from one place to another, and more.
Let's start typing commands together. In your open terminal window, type
hello? and press "enter:"
Your terminal should respond (rudely):
-bash: hello?: command not found
This is how your computer tells you that it does not understand the command you've entered. Remember, we have left the GUI world behind us, so we will no longer have pretty warning messages and alert boxes. But don't worry! In due time, as we grow more comfortable in this new environment, even these cryptic messages will be as clear as any warning box you'll ever see.
Try typing this into your terminal:
$ Where am I?
Again, we get a similar response:
-bash: Where: command not found
Great. We've established that our command line doesn't understand plain English, and that we'll have to use special words while writing our commands. Let's try this one to start:
Whoa! It looks like our computer understood that one! It replied with a message similar to this one:
(Note: On your machine, you should have seen
corneliusfinch replaced with your username!)
If you're following along in Git Bash on Windows, the message will look similar but with some slight differences:
So, what did we just do?
pwd stands for "Print Working Directory."
We use this command when we want the command line to tell us which folder (or directory) of our computer we're currently in.
Just like the Finder on a Mac, your command line interface (CLI) places you in a particular folder
on your computer.
pwd tells you where you're currently located in your file system. Usually, when you open a terminal application, you start off in your "home folder," which shares the name of your username on your computer.
If we were using Finder, we'd be able to see the files and folders that are present in this folder. In a CLI, however, if we want to see the files and folders in our current location, we need to ask for that using another command.
Let's find out which files are in our current folder.
Lo and behold, the folder's contents are:
Applications Desktop Documents Downloads Library Movies Music Pictures Public
(Note: Again, on your own machine, because you may have different files and folders, you may see additional items when you enter
If you're following along in Git Bash on Windows, it's alright if the files and folders listed out look a little different, but you should still see similar folders such as
ls command, which loosely stands for "list," lists the contents of a folder.
It looks like there are some folders in here! Let's find out what's inside our
Documents folder. In order to do so, we'll first navigate to that folder.
$ cd Documents
We have now navigated to the
cd command, which stands for "change directory," is used to navigate to a particular folder on your computer.
This is equivalent to double clicking the
Documents folder in Finder to "go
inside." We can check that we're in the right place by using
$ pwd /Users/corneliusfinch/Documents
Excellent! Now, let's find out what's in the folder using
$ ls funny_cat_picture.jpg office_stuff world_domination_checklist.txt
(Note: Again, you will probably see different files and folders on your own machine!)
In our example, it looks like the
Documents folder contains a JPG file of a funny cat, a folder
full of "office stuff," and a text file containing a checklist for
world domination. Your
Documents folder probably contains something different.
Now that we've investigated our
Documents folder, let's return to our home folder. Because the home folder contains the
Documents folder, we can say that the home folder is the "parent directory" of the
$ cd ..
..(two periods, or "dot-dot") is how we say "parent directory" to our command line.
Many commands consist of three parts: the command, followed by flags (a.k.a., options), and finally, arguments.
$ command -flag -otheroption
As their name implies, flags set options to tell the command line how to do what it's about to do. There may be zero or more options. Options usually start with one or two dashes. For the most part, one dash is used for a short, one-letter abbreviation, while two dashes are used for a long name for the option.
$ ls -a
Will list all files in a directory, including hidden files (files whose names begin with a
$ cd Downloads
Calls the command
cd to change directories. We provide it with the option of where to navigate.