cd 命令,是 Change Directory 的缩写,用来切换工作目录。
特殊符号 | 作 用 |
---|---|
~ | 代表以后登录用户的主目录 |
~ 用户名 | 示意切换至指定用户的主目录 |
– | 代表上次所在目录 |
. | 代表当前目录 |
.. | 代表下级目录 |
概要
cd [-L|[-P [-e]]] [dir]
主要用途
- 切换工作目录至
dir
。其中dir
的表示法能够是绝对路径或相对路径。 - 若参数
dir
省略,则默认为使用者的 shell 变量HOME
。 - 如果
dir
指定为~
时示意为使用者的 shell 变量HOME
,.
示意当前目录,..
示意当前目录的上一级目录。 - 环境变量
CDPATH
是由冒号宰割的一到多个目录,你能够将常去的目录的上一级退出到CDPATH
以便不便拜访它们;如果dir
以/
结尾那么CDPATH
不会被应用。 - 当
shopt
选项cdable_vars
关上时,如果dir
在CDPATH
及当前目录下均不存在,那么会把它当作变量,读取它的值作为要进入的目录。
参数
dir(可选):指定要切换到的目录。
选项
-L(默认值)如果要切换到的目标目录是一个符号连贯,那么切换到符号连贯的目录。-P 如果要切换到的目标目录是一个符号连贯,那么切换到它指向的物理地位目录。- 当前工作目录将被切换到环境变量 OLDPWD 所示意的目录,也就是前一个工作目录。
返回值
返回状态为胜利除非无奈进入指定的目录。
例子
cd
cd /
cd ~
cd ..
cd ../..
cd !$
对于切换到上一个工作目录的阐明
cd -
cd ${OLDPWD}
对于
CDPATH
定义一个根底目录
> export CDPATH=.:/etc # 加了点号
> mkdir /tmp/nginx
> cd /tmp
> cd nginx
# 先找当前目录, 所以以后地位在 /tmp/nginx
> export CDPATH=/etc #没有加点号
> mkdir /tmp/nginx
> cd /tmp
> cd nginx
#以后地位在 /etc/nginx
如果 CDPATH 存在值,那么优先在 CDPATH 中查找并进入第一个匹配胜利的,如果全副失败那么最初尝试当前目录。
对于cdable_vars
shopt -s cdable_vars
new_var='~/rumenz'
cd new_var
shopt -u cdable_vars
如果一个目录名称在环境中没有,然而 cdable_vars 是开启的状态,如果你定义一个别名目录,那 cd 也能够辨认进入这个目录。
留神
- 该命令是 bash 内建命令,相干的帮忙信息请查看
help
命令。 - 建议您在编写脚本的过程中如有必要应用
cd
命令时,请减少必要的正文以用于揭示阅读者当前工作目录,免得呈现诸如找不到文件
这类问题的产生。
原文链接:https://rumenz.com/rumenbiji/…
微信公众号: 入门小站