【问题标题】:Is this an error in the "path.normalize" documentation?这是“path.normalize”文档中的错误吗?
【发布时间】:2020-06-06 21:12:53
【问题描述】:

我试图找出使用 pathupath 的文件路径的问题
(具体问题:Issue saving to Windows "mapped network drive" in Electron

阅读path.normalize(path) 的文档,它给出了以下示例:

例如,在 POSIX 上:

path.normalize('/foo/bar//baz/asdf/quux/..');
// 返回: '/foo/bar/baz/asdf'

在 Windows 上:

path.normalize('C:\temp\\foo\bar\..\');
// 返回:'C:\temp\foo\'

在第一个例子中,“quux”发生了什么?第二,“酒吧”发生了什么?这些只是复制粘贴错误吗?抱歉,如果这似乎是一个微不足道的问题,但这个“路径”的东西,特别是在 Windows 上,让我很困惑(我在 macOS 上)。

【问题讨论】:

  • 这是意料之中的,因为末尾的 .. 上升了一级。
  • @jfriend00 - 感谢您的回复。为什么(以及如何),在“现实世界”中,最终会得到一条路径,该路径最后包含一条向上一级的指令?这让我很困惑。
  • 最后一般不用。更常用于相对于当前工作目录的路径的开头。

标签: node.js path


【解决方案1】:

就像医生说的:

The path.normalize() method normalizes the given path, resolving '..' and '.' segments.

尝试在末尾不使用..,这表明您将向上一个目录并被解释为基本

cd /foo/bar//baz/asdf/quux
cd ..

另外,这可能是一个错误,但这里的 bar//baz 之间有两个斜线。

【讨论】:

  • 感谢您的回复。我只是从文档中复制了示例。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-05-04
  • 2011-09-28
  • 2017-07-23
相关资源
最近更新 更多