cd / 和 cd ~ 之间的区别

cd / 和 cd ~ 之间的区别

有人能解释一下cd /和之间的区别吗cd ~

另外,在管理员级别使用相同的命令有什么区别?

答案1

cd /将目录更改为文件系统的根目录,即/

cd ~将其更改为您的主目录。

这里~被解释为执行命令的用户的主文件夹。对我来说它是/home/anwar

如果您cd ~以 root 身份运行,则会将工作目录更改为 root 用户主目录,即/rootroot用户主文件夹通常不位于/home/目录下,而是直接位于根目录下/

查看此问题以了解 Linux 文件系统的一般介绍

答案2

请注意:在原始问题中,路径是不是相同,并且这些命令并不相等。

cd /

这会转到系统的 /(根)目录。这是一个硬编码路径,无论哪个用户执行它,都会转到同一目录。

cd ~

这是一个始终引用用户主目录的 shell 快捷方式。

如果用户“raj”执行 cd ~,并且他们的主目录是 /home/raj,它将把 raj 带到 /home/raj。

如果用户“babna”执行cd ~,并且他们的主目录是/home/babna,它将把babna带到/home/babna。

如果以 root 身份执行相同的命令,它将带您进入典型的 Ubuntu 系统上的 /root。

这是非常对于脚本很有用,因为多个用户可以使用相同的脚本并影响其主目录的更改。

对于手动输入到 bash 中的单个命令,只要路径最终相同,它们如何输入并不重要,因为 cd本身是一个内置的shell,它将使用相同的机制来切换目录。

相关内容