cd 命令

用途

更改当前目录。

语法

cd [目录]

cd [ 目录a 目录b ]

描述

cd 命令设置某一进程的当前工作目录。 用户必须具有指定目录中的执行(搜索)许可权。

如果未指定目录参数,cd 命令会将当前工作目录设置为登录目录(在 kshbsh 环境中是 $HOME,而在 csh 环境中则是 $home)。 如果指定的目录名是完整路径名,它就成为当前工作目录。 完整路径名以 /(斜杠)开头,表示根目录,而 . (点)表示当前目录,或者 .. (点点)表示父目录。 如果目录名不是完整路径名,那么 cd 命令相对于 $CDPATH shell 变量(或 $cdpath csh 变量)所指定的路径之一搜索该目录。 如果使用 cd 命令未成功搜索这些组件,那么系统会抛出上次搜索组件时的故障消息。 此变量与 $PATH shell 变量(或 $path csh 变量)具有相同的语法和相似的语义。

注: 从 shell 运行 /usr/bin/cd 不会更改 shell 的工作目录。 必须使用 shell 的内置 cd 命令。

退出状态

本命令返回以下退出值:

描述
重大安全事件数量 成功完成。
> 0 发生错误。

示例

  1. 要将当前工作目录更改为登录(主)目录,请输入:
    cd
  2. 要更改为任意目录,请输入:
    cd /usr/include
    这会将当前目录更改为/usr/include.
  3. 要转至目录树的下一级,请输入:
    cd sys
    如果当前目录是/usr/include它包含一个名为sys,然后/usr/include/sys成为当前目录。
  4. 要转至目录树的上一级,请输入:
    cd ..
    特殊文件名,..(点点)指的是当前目录的直接上一级目录。
  5. 指定两个目录参数会在当前工作目录中用字符串 directoryb 替换字符串 directorya,然后将新路径作为当前目录。 例如,如果当前工作目录是
    /home/directorya/sub1/sub2/sub3/sub4
    ,那么命令
    cd directorya directoryb
    将当前工作目录设置为
    /home/directoryb/sub1/sub2/sub3/sub4
    (如果该目录存在的话)。 此外,如果当前工作目录是:
    home/directorya/sub1/sub2/sub3/sub4 
    ,那么命令
    cd directorya directoryb/test
    将当前工作目录设置为
    home/directoryb/test/sub1/sub2/sub3/sub4
    (如果该目录存在的话)。 同样的,如果当前工作目录是
    /home/directoryb/test/sub1/sub2/sub3/sub4
    ,那么命令
    cd directoryb/test directorya
    将当前工作目录设置为
    home/directorya/sub1/sub2/sub3/sub4
    (如果该目录存在的话)。

子目录必须都具有相同名称。