乐趣区

关于linux:Linux之cd命令

cd 命令,是 Change Directory 的缩写,用来切换工作目录。

特殊符号 作 用
~ 代表以后登录用户的主目录
~ 用户名 示意切换至指定用户的主目录
代表上次所在目录
. 代表当前目录
.. 代表下级目录

概要

cd [-L|[-P [-e]]] [dir]

主要用途

  • 切换工作目录至 dir。其中dir 的表示法能够是绝对路径或相对路径。
  • 若参数 dir 省略,则默认为使用者的 shell 变量HOME
  • 如果 dir 指定为 ~ 时示意为使用者的 shell 变量 HOME. 示意当前目录,..示意当前目录的上一级目录。
  • 环境变量 CDPATH 是由冒号宰割的一到多个目录,你能够将常去的目录的上一级退出到 CDPATH 以便不便拜访它们;如果 dir/结尾那么 CDPATH 不会被应用。
  • shopt 选项 cdable_vars 关上时,如果 dirCDPATH及当前目录下均不存在,那么会把它当作变量,读取它的值作为要进入的目录。

参数

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/…
微信公众号: 入门小站

退出移动版