我有一个要运行的路径,例如:./abc/def/myshell.sh
我像这个一样使用path.join
path.join('.', 'abc', 'def', 'myshell.sh');
但是它去除了超前时段。我该怎么保管?还有其他功能吗?
根据您想要的是当前工作目录还是脚本所在的目录,您应该使用process.cwd()
或__dirname
作为path.join
的第一个参数。
我在设置gullow构建时遇到了同样的问题,需要包含脚本目录中的一个文件。使用path.join
似乎可以优化某些路径段,因此即使./
是路径的第一部分,它也会被丢弃(并且意义重大)。
为了避免这种情况,可以传递任何提供绝对路径(cwd或dirname)的内容,强制构建完整路径。