Moving Around the File System

To move around the file system, you specify a directory name as the argument to a directory-changing command. The directories shown below have special names.

Name

Description

.

Current directory

..

Parent of current directory

˜

Your home directory

˜name

Home directory for user name

The cd command changes to a given directory, which becomes your current directory:

cd                 Move to your home directory
cd dir1            Move down one level to dir1
cd dir1/dir2       Move down two levels, through dir1 to dir2
cd ..              Move up one level to parent directory
cd ../..           Move up two levels to parent of parent
cd ../dir3         Move up a level, then back down to dir3
cd /               Move to root directory (top of file system)
cd ˜dubois         Move to home directory of dubois account
cd -               Move to last location (tcsh only)

The shell maintains a directory stack. Stack entries are numbered, starting from 0. pushd and popd change directory (like cd ), but they also add and remove entries from the stack as shown below:

pushd dir        Add dir to stack and change to it
pushd            Exchange top two stack entries
pushd +n         Rotate stack so entry n is on top
popd             Drop top entry and return to previous entry
popd +n          Drop entry n entry from stack (tcsh, some versions of csh)

The dirs command displays or clears the directory stack:

dirs             Display stack
dirs -l          Display stack using long names (no ˜name abbreviations)
dirs -n          Display stack, wrapping output (tcsh only)
dirs -v          Display stack, including entry numbers, one line per entry (tcsh only) dirs -c ...

Get Using csh & tcsh now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.