1. 基本概念
1.1 命令作用
pwd是Linux中一个非常有用而又十分简单的命令,pwd是词组print working directory的首字母缩写,即打印工作目录;工作目录就是你当前所处于的那个目录。
pwd始终以绝对路径的方式打印工作目录,即从根目录(/)开始到当前目录的完整路径。在实际工作中,我们常常记不起当前目录的完整路径,此时pwd命令就派上用场了。
1.2 命令语法
pwd命令的语法结构如下所示:
pwd [option]
其中选项(option)可以是如下内容:
-L 打印逻辑上的工作目录;
-P 打印物理上的工作目录。
当省略option时,默认为-L选项。
1.3 逻辑和物理工作目录
那么什么又是逻辑工作目录和物理工作目录呢?这其实也很简单,只要你知道Linux的符号链接(Symbolic link)的概念。简单地说,符号链接等同于Windows操作系统上的快捷方式。
假设我有两个目录B和C,B符号链接到C且C是常规目录。那么当我对目录B进行操作时,实际是对目录C进行操作。比如,我在B中创建一个新文件,实际上是在C中创建了这个文件。当我处于目录B中时,那么B就是逻辑工作目录而C就是物理工作目录。
现在假设我又有另一个目录A,它也是一个符号链接且链接到B。那么当我处于A中时,逻辑工作目录就是A而物理工作目录还是C。注意此时物理工作目录是C而不是B,因为B也是一个符号链接。即当我对A进行操作时,实际是对B进行操作;而对B的操作,实际又是对C的操作。
1.4 选项的额外说明
当我在CentOS 8上查看pwd命令的说明文档时(即执行man pwd),它指出pwd还有4个额外的选项,分别是:--logical(等同于-L)、--physical(等同于-P)、--help(显示帮助信息)和--version(显示版本信息)。但在实际使用中却只有--help选项有作用,而其它3个选项都显示为无效选项。
当我在Mac OS上执行man pwd时,它又显示pwd只有-L和-P这两个选项。因此断定-L和-P这两个选项是pwd命令必定有的选项,而我们也只需要掌握这两个选项就可以了。
2. 示例
2.1 默认用法
直接使用pwd命令的结果如下图所示,它以绝对路径的方式显示当前目录的完整路径,可以看到我当前的工作目录为:/var/log/httpd。
2.2 逻辑和物理工作目录
在我的系统上,我们按照下图中的流程首先使用cd命令进入/tmp/test这个目录中。然后使用ll命令查看该目录的内容,可以看到有一个符号链接B,它链接到目录/var/log/httpd。我们再用cd命令进入B目录中。
提示:ll命令是"ls -l"命令的简写,它用于详细显示当前目录包含的内容。对于一个符号链接,它本身被显示为浅蓝色而它的链接目标则被显示为深蓝色,它们之间还有一个向右的箭头指明链接的方向。
此时,我们再分别执行pwd -L和pwd -P,结果如下图所示。可以看到-L选项显示的结果为/tmp/test/B,而-P选项显示的结果为/var/log/httpd。
2.3 多个符号链接
我们先在/tmp/test目录下再创建一个符号链接A,它链接到B。然后执行ll命令查看链接关系,再用cd命令进入A目录中。
此刻,我们再分别执行pwd -L和pwd -P,结果如下图所示。可以看到-L选项显示的结果为/tmp/test/A,-P选项显示的结果为/var/log/httpd而不是/tmp/test/B。
(完)
举报/反馈

青石野草

282获赞 73粉丝
岁月不请自来,青春不告而别。共勉!
关注
0
0
收藏
分享