当前位置: 首页>>技术教程>>正文


如何在终端中的目录之间导航?

,

问题描述

我是 Linux 和 Ubuntu 的新手,并且尝试过更改为文件夹/目录时遇到了一些困难。

有人可以解释为什么以下命令无法更改为所需的目标文件夹/目录吗?

sharon@sharon:~$ cd Home 
bash: cd: Home: No such file or directory 
sharon@sharon:~$ cd /Home 
bash: cd: /Home: No such file or directory 
sharon@sharon:~$ cd Documents 
sharon@sharon:~/Documents$ cd Downloads 
bash: cd: Downloads: No such file or directory 
sharon@sharon:~/Documents$ cd /Downloads 
bash: cd: /Downloads: No such file or directory 
sharon@sharon:~/Documents$

最佳办法

文件系统是 GNU/Linux 就像一棵树,除了根在上面。 🙂 所以你有这样的结构:

/
  bin/
  home/
    sharon/
      Documents/
      Downloads/
      fileA.txt
      fileB.jpg
  usr/
  var/

如果要在树内移动,一种选择是使用相对路径。如果您在 /home/sharon 中,则键入 cd Downloads 将起作用,因为 Downloads 是您当前目录的直接子目录。如果您在子文件夹 Documents 中并想将目录 (cd) 更改为 Downloads,则必须向上 (..) 再到 Downloads。所以正确的命令是 cd ../Downloads

您也可以输入绝对路径。所以 Downloads 文件夹是 sharon 的子文件夹,sharonhome 的子文件夹,它是……(你明白了:-))所以你也可以在文件系统中的任何位置输入 cd /home/sharon/Downloads

  • ~ 始终指当前用户的主目录(在您的情况下为 /home/sharon)。如果您输入 cd ~/Downloads,您将进入您的 Downloads 文件夹。

  • . 指的是当前目录,所以 cd ./Downloads 大致相当于 cd Downloads

  • .. 表示 “parent directory”。

  • 文件路径开头的 / 指的是根目录。

下一个好处是标签扩展。如果您输入 cd ~/Dow Tab (最后是按 Tabulator 键),bash 会自动将其扩展为 cd ~/Downloads

正如其他人所说,GNU/Linux 区分大小写。因此,如果您输入 HomehOmehome ,则会有所不同。此外,我希望您现在看到 /homehome 之间存在差异。第一个是绝对地址,而最后一个是相对于当前目录的。

次佳办法

sharon@sharon:~$ cd Home 
bash: cd: Home: No such file or directory 

小 cedilla ~ 表示您已经在 /home/sharon 目录中。当您询问 ‘cd Home’ 时,终端会查找 /home/sharon/Home。空无一人。

sharon@sharon:~$ cd /Home 
bash: cd: /Home: No such file or directory 

现在你在问,给定前导斜杠,转到当前位置上方的目录;即 /home/Home。空无一人。

sharon@sharon:~$ cd Documents 
sharon@sharon:~/Documents$

成功!

sharon@sharon:~/Documents$ cd /Downloads 
bash: cd: /Downloads: No such file or directory 

我不太确定这到底在哪里。如果您想从 /home/sharon/Documents 更改为 /home/sharon/Downloads,请尝试:

cd ~/Downloads

如果您想直接进入您的主目录,即 /home/sharon,只需执行以下操作:

cd

你也可以退一步

cd ..

您可以打印您正在使用的目录(打印工作目录)

pwd

第三种办法

该命令告诉你原因:没有这样的目录。

文件名区分大小写,因此是 /home,而不是 /Home。没有前导斜杠,假定是相对于当前目录,Downloads 目录不在~/Documents,也不在/,而是在你的主目录,~ 是一个快捷方式,所以它是~ /文件。

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/12423.html,未经允许,请勿转载。