cd(1) manual page
Table of Contents
cd, chdir, pushd, popd, dirs - change working directory
/usr/bin/cd
[ directory ]
cd [ argument ]
chdir [ argument ]
cd [ dir ]
chdir [ dir ]
pushd [ +n | dir]
popd [ +n ]
dirs [ -l ]
cd [ arg ]
cd old new
SUNWcsu
The cd
utility will change the working directory of the current shell execution
environment. When invoked with no operands, and the HOME
environment variable
is set to a non-empty value, the directory named in the HOME
environment
variable will become the new working directory.
The Bourne shell built-in
cd changes the current directory to argument. The shell parameter HOME
is the default argument. The shell parameter CDPATH
defines the search
path for the directory containing argument. Alternative directory names
are separated by a colon (:). The default path is <null> (specifying the current
directory). Note: The current directory is specified by a null path name,
which can appear immediately after the equal sign or between the colon
delimiters anywhere else in the path list. If argument begins with ‘ / ’,
‘ . ’, or ‘ .. ’, the search path is not used. Otherwise, each directory in the
path is searched for argument. cd must have execute (search) permission
in argument. Because a new process is created to execute each command,
cd would be ineffective if it were written as a normal command; therefore,
it is recognized by and is internal to the shell. (See pwd(1)
, sh(1)
, and
chdir(2)
).
chdir is just another way to call cd.
If dir is not specified,
the C shell built-in cd uses the value of shell parameter HOME
as the
new working directory. If dir specifies a complete path starting with ‘ /
’, ‘ . ’, or ‘ .. ’, dir becomes the new working directory. If neither case applies,
cd tries to find the designated directory relative to one of the paths
specified by the CDPATH
shell variable. CDPATH
has the same syntax as,
and similar semantics to, the PATH
shell variable. cd must have execute
(search) permission in dir. Because a new process is created to execute
each command, cd would be ineffective if it were written as a normal command;
therefore, it is recognized by and is internal to the C-shell. (See pwd(1)
,
sh(1)
, and chdir(2)
).
chdir changes the shell’s working directory to directory
dir. If no argument is given, change to the home directory of the user. If
dir is a relative pathname not found in the current directory, check for
it in those directories listed in the cdpath variable. If dir is the name
of a shell variable whose value starts with a /, change to the directory
named by that value.
pushd will push a directory onto the directory stack.
With no arguments, exchange the top two elements.
- +n
- Rotate the n’th entry
to the top of the stack and cd to it.
- dir
- Push the current working directory
onto the stack and change to dir.
popd pops the directory stack and cd
to the new top directory. The elements of the directory stack are numbered
from 0 starting at the top.
- +n
- Discard the n’th entry in the stack.
dirs
will print the directory stack, most recent to the left; the first directory
shown is the current directory. With the -l argument, produce an unabbreviated
printout; use of the ~ notation is suppressed.
The Korn shell built-in
cd command can be in either of two forms. In the first form it changes
the current directory to arg. If arg is - the directory is changed to the
previous directory. The shell variable HOME
is the default arg. The variable
PWD
is set to the current directory. The shell variable CDPATH
defines
the search path for the directory containing arg. Alternative directory
names are separated by a colon (:). The default path is <null> (specifying
the current directory). Note that the current directory is specified by
a null path name, which can appear immediately after the equal sign or
between the colon delimiters anywhere else in the path list. If arg begins
with a ‘ / ’, ‘ . ’, or ‘ .. ’, then the search path is not used. Otherwise, each
directory in the path is searched for arg.
The second form of cd substitutes
the string new for the string old in the current directory name, PWD
and
tries to change to this new directory.
The cd command may not be executed
by rksh. Because a new process is created to execute each command, cd would
be ineffective if it were written as a normal command; therefore, it is
recognized by and is internal to the Korn shell. (See pwd(1)
, sh(1)
, and
chdir(2)
).
The following operands are supported:
- directory
- An absolute
or relative pathname of the directory that becomes the new working directory.
The interpretation of a relative pathname by cd depends on the CDPATH
environment variable.
If a non-empty directory name from CDPATH
is
used, an absolute pathname of the new working directory will be written
to the standard output as follows: "%s\n", <new directory>
Otherwise, there
will be no output.
See environ(5)
for descriptions of the following
environment variables that affect the execution of cd: LC_CTYPE
, LC_MESSAGES
,
and NLSPATH
.
- CDPATH
- A colon-separated list of pathnames that refer to directories.
If the directory operand does not begin with a slash ( / ) character, and
the first component is not dot or dot-dot, cd will search for directory
relative to each directory named in the CDPATH
variable, in the order
listed. The new working directory will be set to the first matching directory
found. An empty string in place of a directory pathname represents the current
directory. If CDPATH
is not set, it will be treated as if it were an empty
string.
- HOME
- The name of the home directory, used when no directory operand
is specified.
- PWD
- A pathname of the current working directory, set by cd
after it has changed to that directory.
The following exit
values are returned by cd:
- The directory was successfully changed.
- >0
- An
error occurred.
csh(1)
, ksh(1)
, pwd(1)
, sh(1)
, chdir(2)
, environ(5)
Table of Contents