Linux cd
约 706 字大约 2 分钟
2025-01-11
介绍
cd
(change directory
)命令用于改变当前工作目录的命令,切换到指定的路径。若目录名称省略,则变换至用户的 home
目录 (也就是刚 login
时所在的目录)。~
也表示用户的 home 目录,.
则是表示目前所在的目录,..
则表示目前目录位置的上一层目录。
语法
$ cd [dirName]
参数:
dirName
:要切换的目标目录,可以是绝对路径或相对路径。
常用参数
-
:回到上一次的目录~
:回到home
目录~用户名
:切换到指定用户的home
目录.
:回到当前目录..
:回到当前目录的上一级目录
使用
一般shell CLI
提示符中会显示当前位置
如果你的shell CLI
提示符中没有显示shell
会话的当前位置,那是因为没有进行相关的配置。
cd
绝对路径
用户可以在虚拟目录中采用绝对路径来引用目录名。绝对路径定义了在虚拟目录结构中,该目录从根目录开始的确切位置,相当于目录的全名
$ cd /usr
cd
相对路径
相对路径允许你指定一个基于当前位置的目标路径。相对路径不以代表根目录的正斜线(/)开头,而是以目录名(如果你准备切换到当前工作目录下的某个目录的话)或是一个特殊字符开始
有两个特殊字符可用于相对路径中:
- 单点号(
.
),表示当前目录。 - 双点号(
..
),表示当前目录的父目录。
提示 可以自己写脚本已支持过个点的返回。比如cd ...
返回上上级目录,cd ....
上上上级目录。
多级返回
cd
默认支持.
和..
这种相对路径返回,但是不支持...
这种返回上两层目录,如果需要返回上两层目录,需要使用cd ../../
。但在一些sh
比如zsh
中每多一个点就表示多一层目录,比如:...
表示上两层目录。当然也可以自己编辑一个脚本实现这种功能,但麻烦所以建议使用zsh
等。
下面在zsh
中测试一下
$ cd /usr/local/bin # cd到/usr/local/bin目录
$ cd # 切换到home目录
$ cd - # 返回到上次的目录 /usr/local/bin
/usr/local/bin
$ cd ../../ # 返回到上两层目录来到 /usr
$ cd - # 返回到上次的目录 /usr/local/bin
/usr/local/bin
$ cd ... # 返回到上两层目录来到 /usr
可以看出在zsh
中cd ../../
和cd ...
的效果是一样的,但是却简洁了很多。