服务器 频道

Linux基础教程之命令的使用

  相对路径

  另一种路径叫相对路径。在 Bash 中,cd 以及其它命令总是解释那些相对于当前目录的路径。相对路径绝不会以 / 开头。这样,如果我们在 /usr 中:

$ cd /usr

  那么,我们可以使用相对路径来转到 /usr/local/bin 目录:

$ cd local/bin 
$ pwd 
/usr/local/bin


  使用“..”

  相对路径还可以包含一个或多个 .. 目录。.. 目录是指向父目录的专门目录。那么,继续前面的示例:

$ pwd 
/usr/local/bin 
$ cd .. 
$ pwd 
/usr/local


  您可以看到,现在我们的当前目录是 /usr/local。我们能够“后退”到相对于我们所在的当前目录的一个目录。此外,我们还可以将 \\\\\"..\\\\\\" 添加到一个现有的相对路径中,使我们可以进入与我们已在目录并排的目录,例如:

$ pwd 
/usr/local 
$ cd ../share 
$ pwd 
/usr/share

  相对路径示例

  相对路径可以变得相当复杂。这里有几个示例,所有的都没有显示出结果的目标路径。请试着推断一下,输入这些命令后,您最终将会转到什么地方:

$ cd /bin 
$ cd ../usr/share/zoneinfo
$ cd /usr/X11R6/bin 
$ cd ../lib/X11
$ cd /usr/bin 
$ cd ../bin/../bin

  现在,试验一次,看看您的推断是否正确。

  理解“.”

  在我们结束 cd 的介绍之前,我们还需要讨论一些更多的内容。首先,还有另一个叫 . 的专门的目录。它表示“当前目录”。然而该目录不为 cd 命令使用,它通常用来执行一些当前目录中的程序,如下所示:

$ ./myprog

  在上面的示例中,驻留在当前工作目录中的 myprog 可执行文件将被执行。

  cd 和主目录

  如果我们想要转到主目录,我们可以输入:

$ cd

  没有参数,cd 将转到主目录,对于超级用户来说是 /root,对于一般用户来说通常是

  /home/username。但是,如果我们想要指定一个主目录中的文件,将会怎样呢?可能我们想要将一个文件参数传给 myprog 命令。如果该文件在主目录中,我们可以输入:

$ ./myprog /home/drobbins/myfile.txt

  但是,使用像这样的绝对路径并不总是很方便。幸好,我们可以使用 ~(代字符)字符来完成同样的事:

$ ./myprog ~/myfile.txt

  其他用户的主目录Bash 将把单独的 ~ 扩展为指向主目录,然而您还可以用它来指向其他用户的主目录。例如,如果我们想要引用 fred 的主目录中的名为 fredsfile.txt 的文件,可以输入:

$ ./myprog ~fred/fredsfile.txt
0
相关文章