Skip to main content

Linux 核心命令

文件和目录管理命令 cd

cd 命令是 Linux 中最常用的命令之一,全称是 change directory,用来切换当前的工作目录。就是让你在文件系统的不同文件夹之间跳转。

1. 切换到指定目录

最简单的用法是直接跟上一个目录路径,cd 会把你带到那个目录。比如:

cd /home/user/documents

这会让你切换到 /home/user/documents 目录。路径可以是绝对路径(从根目录 / 开始)或相对路径(基于当前目录)。比如你在 /home/user 下,运行:

cd documents

效果是一样的,因为 documents 是相对于当前目录的路径。

2. 回到上一级目录

想回到当前目录的上级目录,用 .. 表示上一级。比如你在 /home/user/documents 下,运行:

cd ..

这会把你带到 /home/user。如果想再往上两级,可以用:

cd ../..

这里 ../.. 表示上两级目录,依次类推。

3. 回到家目录

家目录(home directory)是你登录系统时的默认目录,通常是 /home/你的用户名。用 cd 带上 ~ 或者直接敲 cd 不加参数,就能快速回到家目录:

cd ~

或者:

cd

效果一样。比如你的家目录是 /home/user,运行上面任一命令都会回到那里。

4. 切换到根目录

根目录是 Linux 文件系统的顶层,用 / 表示。要切换到根目录,直接运行:

cd /

这会让你直接跳到 / 目录,比如想看看 /etc/var 这些系统目录时很有用。

5. 回到上一次所在目录

有时候你切换了目录,又想快速回到之前的目录,用 cd - 就行。比如你在 /home/user/documents 切换到 /var/log

cd /var/log

然后运行:

cd -

这会把你带回 /home/user/documents,并且终端还会打印出你切换到的目录路径,方便确认。

6. 处理路径中的空格

如果目录名里有空格(比如 My Documents),直接 cd My Documents 会报错,因为 Linux 会把空格当成参数分隔符。解决办法是用引号把路径包起来,或者用反斜杠 \ 转义空格。比如:

cd "My Documents"

或者:

cd My\ Documents

两种方法都能正确切换到 My Documents 目录。

7. 使用环境变量

cd 可以结合环境变量来快速跳转。比如,HOME 变量通常指向你的家目录,运行:

cd $HOME

效果等同于 cd ~。再比如,如果你定义了一个环境变量 MYDIR=/var/log,可以用:

cd $MYDIR

直接跳到 /var/log

8. 相对路径和绝对路径

  • 绝对路径:从根目录 / 开始的完整路径,比如 /home/user/documents。不管你当前在哪个目录,cd /home/user/documents 总是去同一个地方。
  • 相对路径:基于当前目录的路径,比如 cd documents。如果你在 /home/user 下,这会去 /home/user/documents;但如果在 /var,就会去 /var/documents

绝对路径适合明确知道目标位置时使用,相对路径适合在当前目录附近操作时用。

9. 常见错误

  • 目录不存在

如果你输入的目录不存在,比如:

cd /wrong/path

会报错:bash: cd: /wrong/path: No such file or directory。解决办法是检查路径拼写,或者用 ls 确认目录是否存在:

ls /wrong
  • 权限问题

如果目标目录没有访问权限,比如:

cd /root

可能会报错:bash: cd: /root: Permission denied。可以用 ls -l 检查权限,或者用 sudo(如果有权限):

sudo cd /root

注意:sudo cd 通常不起作用,因为 cd 是 shell 内置命令,不是独立程序。可以用 sudo -i 进入 root 的 shell 再操作。