在我的 Linux 机器上,在 bash 中,我可以访问由两个正斜杠表示的“双根”文件夹:
tomas:~ $ cd /
tomas:/ $ ls
bin/ cdrom@ ...
tomas:/ $ cd //
tomas:// $ ls
bin/ cdrom@ ...
Run Code Online (Sandbox Code Playgroud)
文件夹及其子文件夹的内容与“普通”单斜杠根目录相同。当我访问其子文件夹时,双斜线不会消失。异常不会以三个或更多斜线重复;这些是根的简单同义词:
tomas:// $ cd home/tomas
tomas://home/tomas $ cd ///
tomas:/ $ cd ////
tomas:/ $
Run Code Online (Sandbox Code Playgroud)
这是一个什么样的地方?这是一个错误吗?任何人都可以解释异常吗?
Den*_*son 18
E10) 为什么 'cd //' 将 $PWD 保留为 '//'?
POSIX.2 在其对 'cd' 的描述中表示,在规范化当前工作目录时,三个或更多前导斜杠可能会替换为单个斜杠。
我认为这是为了历史兼容性。某些版本的 Unix 和早期的网络文件系统使用 //hostname/path 形式的路径来访问服务器“主机名”上的“路径”。