PyCon intro to open source/Windows command line

The filesystem on your computer is like a tree made up of directories and files. The filesystem has a root directory called /, and everything on your computer lives in subdirectories of this root directory.

We often navigate the filesystem graphically by clicking on graphical folders. We can do the exact same navigation from the command line.

There are two commands that we'll be using at a command prompt to navigate the filesystem on your computer:

lists the contents of a directory.

moves you into a new directory (it stands for "change directory").

Let's practice using these commands.

Open a command prompt:

 * On Windows Vista or Windows 7: click on the Start menu (the Windows logo in the lower left of the screen), type  into the Search field directly above the Start menu button, and click on "cmd" in the search results above the Search field.
 * On Windows XP: click on the Start menu (the Windows logo in the lower left of the screen), click on "Run...", type  into the text box, and hit enter.

Practice using and
Type each of these commands and hit enter:

dir This lists all the files in your home directory.

cd C:\ This will change you into the  directory.

dir This lists the contents of the  directory.

cd Users This will change you into the  subdirectory of the   directory.

dir You should see the names of all the files and directories in.

cd .. means "parent directory", so this command moved you up to the parent directory. You were in, so now you are in  , the root directory.

dir This lists the contents of the root directory, confirming where you are.

Absolute v. relative paths
When navigating the filesystem, you can use 2 kinds of paths: absolute and relative.

Absolute paths
 * An absolute path contains the full set of directories from the root of the file system up to your target file or directory. On Windows, an absolute path starts with a drive like C:\.
 * You can cd to an absolute path from anywhere on the filesystem.
 * This is an example absolute path: C:\Users\jesstess\projects

Relative paths
 * A relative path is calculated relative to your "current working directory" -- the directory you are currently in at a command prompt, as displayed by pwd.
 * This is an example relative path: projects. That path only has meaning given a current working directory. If your current working directory were C:\Users\jesstess, then cd projects would take you to C:\Users\jesstess\projects</tt> assuming that such a directory existed. If you were in C:\Users\brad\Desktop</tt>, then cd projects</tt> would take you to C:\Users\brad\Desktop\projects</tt>.

Tips

 * You can use Tab to auto-complete directory and file names. So from inside the root directory, if you type  and hit Tab, the command prompt will auto-complete the directory name, and you can then hit enter to change into the   directory.
 * The command prompt maintains a command history. You can use the up arrow to cycle through old commands.
 * Note that the text that makes up the command prompt changes as you move around directories. The command prompt will always give the full directory path to your current directory.

Review
Answer these questions. Experiment at the command line if you need to! If you aren't sure about an answer, ask a helper.


 * 1) What directory are you in after starting a new command line prompt?
 * 2) After starting a new command line prompt, how would you get to the root directory?
 * 3) How do you check what files and directories are in your current working directory?
 * 4) If you are in directory C:\Users</tt>, and you want to get to C:\Users\jesstess\projects</tt>, how would you do that?
 * 5) What are 2 ways to avoid typing out a full navigation command? (hint: one requires that you've run the command before)
 * 6) What is the difference between cd Users</tt> and cd C:\Users</tt>?

Success!
You've practiced using  and   to navigate your computer's filesystem from the command prompt.

&laquo; Back to the main page