Linux 相当于 Windows \\ 文件夹路由路径是什么?

Linux 相当于 Windows \\ 文件夹路由路径是什么?

我们的项目中有一些路由路径,如下所示:

"start": "set NODE_ENV=local&&node_modules\\.bin\\webpack --config webpack.dev.config.js"

Linux 中的等价物是怎样的?我们正在使用 Debian,但使用此替代方案时遇到问题:

"start": "set NODE_ENV=local&&node_modules//.bin//webpack --config webpack.dev.config.js"

或者:

"start": "set NODE_ENV=local&&node_modules/.bin/webpack --config webpack.dev.config.js"

答案1

这与 Linux 或路径分隔符无关,您已经调整过路径分隔符。

设置 NODE_ENV=本地

这不是在 POSIX shell 中设置环境变量的方法。

&&

这不是在 POSIX shell 中运行带有随机数环境变量设置的命令的方法。

您需要学习 POSIX shell 脚本编写的基础知识,包括如何设置变量。

我想说看看类似的东西cross-env,但这实际上假设人们已经了解 POSIX shell 脚本,因为它使事情在 Windows 上以类似 POSIX shell 的方式工作:

cross-env NODE_ENV=本地node_modules/.bin/webpack …

在此之前,您需要首先学习 POSIX shell 脚本。

NODE_ENV=本地node_modules/.bin/webpack …

这类事情并不是 Linux(操作系统内核)甚至 Debian 所特有的。

答案2

回答你的主要问题:

由于反斜杠是转义字符,因此当您要将其放入字符串中时,您需要使用另一个反斜杠对其进行转义。所以双反斜杠仅仅意味着一个反斜杠。

在Linux中,您使用正斜杠来分隔路径,因此无需将其加倍。

因此,要将路径从 Windows 格式转换为 Linux 格式,只需用正斜杠替换任何双反斜杠即可。

但对于命令的其余部分,您需要提供更多信息,例如它在哪里以及您将用它做什么。

答案3

在 Linux 中,与 Windows 中的双重 <反斜线> 对应的符号是“//”。

基本定义卷的第 4.13 节路径名解析说:

...如果路径名以两个连续字符开头,则前导字符后面的第一个组件可以以实现定义的方式解释,尽管两个以上前导字符应被视为单个字符。 ...

因此,在某些系统上,它可能会被解释为主机名。

但是,这只适用于路径字符串的第一个组成部分。对于字符串的其余部分,它与单个“/”相同,请检查配置文件的文档。

相关内容