Linux 文件和目录操作 - cd - 切换目录

时间:2022-11-21 16:59:43

命令详解

重要星级:

        ★★★★★

功能说明:

        cd 命令是 "change directory" 中每个单词的首字母缩写,其功能是从当前工作目录切换到指定工作目录。

语法格式:

    cd [option]  [dir]
    cd [选项]     [目录]

说明:

        1. 注意 cd 命令以及后面的选项和目录,每个元素之间都至少要有一个空格。

        2. cd 命令后面的选项和目录等参数都可以省略。默认情况下,单独执行 cd 命令,可以切换到当前登录用户的家目录 ( 有系统环境变量 HOME 定义 )

        3. cd 是 bash shell 的内置命令,查看该命令对应的系统帮助需要使用 help cd 。

选项说明:

-P: 如果切换的目标是一个软链接,则会直接切换到软链接指向的真正物理目标目录,和 pwd 命令的 -P 选项功能类似, 该参数不常用。

-L: 功能与 -P 相反,如果是切换的目标目录是一个软链接,则直接切换到软链接所在目录,和 pwd 命令的 -L 选项功能类似,该参数不常用。

- : 当只使用 "-" 选项时,将会从当前目录切换到系统环境变量 "OLDPWD" 对应值的目录路径,即当前用户上次所在的目录路径 ※ ~ : 当只使用 "~" 选项时,将会从当前目录切换到系统环境变量 "HOME" 对应值的目录路径,即当前用户上次所在的目录路径 ※

..: 当只使用 ".." 选项时,将会从当前目录切换到当前目录的上一级目录所在的路径 ※

注意:

        1. 在使用 cd 命令时,如果使用键盘上 "tab" 键的自动补全功能,可以提高输入速度和准确度。这个 "tab" 键的自动补全功能同样也适用于其他命令

        2. 要了解路径的概念。比如,相对路径是不从 "/" ( 斜线 ) 开始的路径,而是从当前目录或指定的目录开始,如:data/ 、mnt/disk; 绝对路径是从 "/" ( 斜线 ) 根开始的路径, 如: /data/,/mnt/disk。

        3. 当需要切换到当前用户上一次所在的目录时,请使用   cd -   ( 注意空格 ) ;
            当需要切换到当前用户的家目录时,请使用   cd ~   ( 注意空格 ) ;
            当需要切换到当前目录的上一级目录所在的路径时,请使用   cd ..   ( 注意空格 ) ;

使用范例:

进入系统 /etc 目录 ( cd /etc )。

[root@localhost :~]# pwd
/root        # 在 Linux 系统中,每个用户都有自己的家目录,默认情况下用户登录系统后会进入自己的家目录。root 用户的家目录是 /root,
# 普通用户的家目录默认是 /home/ 用户名 /。 [root@localhost :~]# cd /usr/local/ # 切换到 /user/loca/ 目录 [root@localhost :/usr/local]# pwd /usr/local # 此时已经进入 /usr/load 目录了

切换到当前目录的上一级目录 (cd .. )。

[root@localhost :/usr/local]# pwd
/usr/local
[root@localhost :/usr/local]# cd ..        # ".." 等同于上一级目录名,也可以写成 "../ "。
[root@localhost :/usr]# pwd
/usr                                       # 此时已经切换到了 /usr 目录

进入当前目录父目录的父目录 ( cd ../../ )。

[root@localhost :/usr]# cd /usr/local/
[root@localhost :/usr/local]# pwd
/usr/local
[root@localhost :/usr/local]# cd ../../   # 退到当前目录的上两级目录,即退到 "/" 目录。
[root@localhost :/]# pwd
/

        提示:只要目录有足够多的层次,可以一直这样继续下去  cd ../../../../...  ,直到退到 "/ " 为止。

返回当前用户上一次所在的目录 ( cd - )。

[root@localhost :/]# cd /usr/local/
[root@localhost :/usr/local]# pwd
/usr/local
[root@localhost :/usr/local]# cd  # cd 命令不接受任何参数时,从环境变量 HOME 获取路径名, 即借还到当前用户家目录。
[root@localhost :~]# pwd      # 当前用户的工作路径为 /root。
/root
[root@localhost :~]# cd -     # 执行 "cd - " 时,cd 将根据环境变量 OLDPWD 的对应值获取路径名, 即切换到了当前用户上一次的工作路径 "/usr/local "/usr/local

进入当前用户的家目录 ( cd ~ )。

[root@localhost :/usr/local]# cd /usr/local/
[root@localhost :/usr/local]# pwd
/usr/local
[root@localhost :/usr/local]# cd ~  # "~" 键盘左上角 Esc 键下方的波浪符号,代表家目录。
[root@localhost :~]# pwd
/root                               # 切换到当前用户的家目录了。

        提示:执行不带任何参数的 cd 命令和   cd ~   的结果一样