Linux cd 命令
最后修改于 2025 年 2 月 25 日
Linux 中的 cd 命令用于在终端中更改当前工作目录。它是导航文件系统最常用的命令之一。本教程通过实际示例涵盖了 cd 的基本和高级用法。
cd 对于在目录之间移动、访问文件以及在命令行中组织工作流至关重要。
基本用法
此示例导航到一个项目文件夹。
cd /home/user/projects
cd 命令将当前目录更改为 /home/user/projects。这是一个从根目录 (/) 开始的绝对路径。如果路径存在且您有权限,shell 会更新您的当前工作目录。之后可以使用 pwd 来验证更改(例如,输出 /home/user/projects)。
更改到主目录
这会移动到您的个人主目录。
cd ~
~ 符号是当前用户主目录的简写,通常是 /home/username。它可用于从文件系统的任何位置快速返回您的个人空间。对于 root 用户,它通常是 /root。运行 echo $HOME 会显示相同的路径。
更改到父目录
这会向上移动到包含当前目录的目录。
cd ..
.. 符号指的是您当前位置的父目录。例如,如果您在 /home/user/docs 中,这会将您带到 /home/user。您可以链式使用它(例如,cd ../..)来向上移动多个级别。它非常适合在层次结构中后退一步。
更改到上一个目录
这会切换回上次访问的目录。
cd -
- 符号会调出存储在 $OLDPWD 变量中的上一个工作目录。如果您在 /var/log 中,然后运行 cd /etc,cd - 会将您返回到 /var/log。它还会打印目标路径。非常适合在两个位置之间切换。
更改到根目录
这会跳转到文件系统的顶部。
cd /
/ 符号表示根目录,即整个 Linux 文件系统的基础。运行此命令会将您置于 /,其中包含 bin、etc 和 var 等核心目录。它对于从顶部开始导航或访问系统文件很有用。
更改到子目录
这会进入当前目录中的一个文件夹。
cd downloads
这里的 cd 命令使用相对路径,移动到当前位置的 downloads 子目录。如果您在 /home/user 中,它会将您带到 /home/user/downloads,前提是它存在。没有前导斜杠表示它是相对于您当前路径的。
高级:使用环境变量
这会使用一个变量来访问文档文件夹。
cd $HOME/Documents
$HOME 变量存储您的主目录路径(例如,/home/user)。附加 /Documents 可以导航到 /home/user/Documents。环境变量使脚本具有可移植性和灵活性。您可以定义自定义变量(例如,export WORK=/work)并以类似的方式使用它们。
示例:多次跳转目录
这会链接命令来导航深度嵌套的路径。
cd ../../usr/local/bin
这会向上移动两级,然后向下通过 usr/local/bin。如果您从 /home/user/docs/text 开始,.. 会将您带到 /home/user/docs,然后 .. 将您带到 /home/user,usr/local/bin 会将您带到 /usr/local/bin。这是一个结合了父目录和子目录导航的相对路径。
示例:在路径中使用空格
这会处理名称中带有空格的目录。
cd "~/My Documents"
带空格的目录需要用引号或进行转义。此处,"~/My Documents" 会展开为 /home/user/My Documents。如果没有引号,cd 会将 My 和 Documents 解释为单独的参数并失败。或者,使用反斜杠 cd ~/My\ Documents 也可以。这对于真实的文件名至关重要。
示例:与其他命令结合使用
这会在一行中导航并列出内容。
cd /etc && ls
&& 运算符会运行 cd /etc,如果成功,则执行 ls 来列出 /etc 中的文件。这种链接可以节省时间并确认目录更改。如果 cd 失败(例如,没有权限),ls 将不会运行。您也可以使用分号 cd /etc; ls 来运行,无论是否成功。
cd 的最佳实践
- 使用绝对路径:使用绝对路径进行可靠导航。
- 利用快捷方式:使用
~、..和-进行快速导航。 - 检查当前目录:使用
pwd确认当前目录。 - 与其他命令结合使用:将
cd与ls等命令结合使用来浏览目录。
来源
在本文中,我们探讨了使用 cd 命令导航文件系统的各种示例,包括更改到主目录、父目录、上一个目录和根目录。