Node.js确定符号链接的目标路径
注意:使用Node.js 8 我有一系列符号链接:Node.js确定符号链接的目标路径,node.js,symlink-traversal,Node.js,Symlink Traversal,注意:使用Node.js 8 我有一系列符号链接:a->b->c 我需要将初始符号链接a解析为其目标b。如何在Node.js中实现这一点 fs.realpath函数解析符号链,因此它将a解析为c。这不是期望的行为 我还试图找到一个npm包来实现这一点,但到目前为止没有任何运气 我想也许我可以打开fs.符号链接并阅读内容,但我不知道如何访问记录在案的fs.constants.O_symlink常量,可能是因为我在节点8上。我在Node.js文档中搜索了“符号链接”一词,但节点文档只是将它们称为“链
a
->b
->c
我需要将初始符号链接a
解析为其目标b
。如何在Node.js中实现这一点
fs.realpath
函数解析符号链,因此它将a
解析为c
。这不是期望的行为
我还试图找到一个npm
包来实现这一点,但到目前为止没有任何运气
我想也许我可以打开fs.符号链接并阅读内容,但我不知道如何访问记录在案的fs.constants.O_symlink常量,可能是因为我在节点8上。我在Node.js文档中搜索了“符号链接”一词,但节点文档只是将它们称为“链接”。解决方案是使用:
文档还列出了
fs.constants.O_SYMLINK
。有什么需要弄清楚的?如果您在REPL中键入它,它不会给您一个数值吗?否,fs.constants.O_SYMLINK
未定义。什么是node-v
输出?node-v
输出v8.10.0
const {readlink} = require("fs");
fs.readlink("a", (err, target) => {
if (!err) console.log(target); // prints "b"
});