The cd
(“更改目录”)命令用于更改 Linux 和其他类 Unix 操作系统中的当前工作目录。它是在 Linux 终端上工作时最基本、最常用的命令之一。
The 当前工作目录是用户当前正在其中工作的目录(文件夹)。每次与命令提示符交互时,您都是在一个目录中工作。
本文将向您展示如何使用cd
命令来导航系统的目录树。
cd 命令#
cd
是 shell 内置函数,其行为可能因 shell 的不同而略有不同。它使用外壳环境变量以确定其执行所需的信息。
我们将介绍 Bash 内置版本cd
.
语法为cd
命令如下:
该命令仅接受两个很少使用的选项。
-
−L
, 跟随符号链接。默认情况下,cd
表现得好像-L
选项已指定。
-
−P
,不要点击符号链接。换句话说,当指定此选项并且您尝试导航到指向目录的符号链接时,cd
将更改为目录。
以最简单的形式,在不带任何参数的情况下使用时,cd
将带您到您的主目录。
在文件系统中导航时,您可以使用Tab
自动完成目录名称的键。在目录名称末尾添加斜杠是可选的。
要切换到目录,您必须具有可执行权限对于该目录。
The pwd命令允许您找出当前所在的目录。
绝对和相对路径名#
指定要更改到的目录时,可以使用绝对路径名或相对路径名。绝对路径或完整路径从系统根目录开始/
,相对路径从当前目录开始。
默认情况下,当您登录 Linux 系统时,当前工作目录将设置为您的主目录。假设Downloads
目录存在于您的主目录中,您可以使用该目录的相对路径导航到该目录:
cd Downloads
您还可以使用绝对路径导航到同一目录:
cd /home/username/Downloads
简而言之,如果路径以斜线开头 (/
),它是目录的绝对路径。
家长目录#
在类 Unix 操作系统上,当前工作目录由一个点表示(.
)。两个点(..
),一个接一个,代表父目录或当前目录的上一级目录。
如果您输入cd .
,您将更改到当前目录,或者换句话说,该命令将不执行任何操作。
假设您当前处于/usr/local/share
目录。要切换到/usr/local
目录(当前目录的上一级),您可以键入:
cd ../
向上移动两个级别/usr
目录(父级的父级),您可以运行以下命令:
cd ../../
这是另一个例子。假设您在/usr/local/share
目录,并且您想切换到/usr/local/src
。您可以通过输入以下内容来做到这一点:
cd ../src
导航到上一个目录#
要更改回之前的工作目录,请传递破折号 (-
) 字符作为 cd 命令的参数:
cd -
导航至主目录#
要导航到您的主目录,只需键入cd
。直接返回主目录的另一种方法是使用波形符 (~
) 字符,如下图:
cd ~
例如,如果您想导航到Downloads
目录,位于您的主目录中,您可以输入:
cd ~/Downloads
您还可以使用以下语法导航到另一个用户的主目录:
cd ~username
名称中带有空格的目录#
如果要更改的目录名称中包含空格,则应该用引号将路径括起来或使用反斜杠 (\
) 字符来转义空格:
cd 'Dir name with space'
cd Dir\ name\ with\ space
结论#
到现在为止,您应该已经很好地了解了当前工作目录是什么以及如何使用cd
命令来浏览系统的目录结构。
如果您有任何问题或反馈,请随时发表评论。