我输入了一个命令cd //
代替cd /
错误地,而不是像我期望的那样收到错误,shell(Bash)显示了一个提示,就像我在//
目录:-
<username>@<hostname>://$
<username>@<hostname>://$ pwd
//
列出该目录的内容表明它是相同的/
.
那么究竟是什么cd //
做和有什么区别cd /
?
实际上它没有任何意义并且被忽略。
来自Bash 常见问题解答 E10: http://tiswww.case.edu/php/chet/bash/FAQ:
E10) 为什么 'cd //' 将 $PWD 保留为 '//'?
POSIX.2 在其对“cd”的描述中表示,三个或更多前导
规范化时,斜杠可以替换为单个斜杠
当前工作目录。
我认为这是为了历史兼容性。某些版本的
Unix 和早期的网络文件系统使用以下形式的路径
//主机名/路径访问服务器“主机名”上的“路径”。
还有Unix标准 http://pubs.opengroup.org/onlinepubs/000095399/basedefs/xbd_chap04.html#tag_04_11 states:
可以解释以两个连续斜杠开头的路径名
以实现定义的方式,尽管超过两个领先
斜杠应被视为单个斜杠。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)