创建破碎的符号链接

时间:2015-07-30 07:01:55

标签: node.js filesystems symlink

为什么这会创建一个破损的符号链接?

var fs = require("fs")
fs.symlinkSync("./file.txt", "./empty-dir/symlink.txt", "file")

我可以通过Finder或fs.readdir在目录中看到该文件,但无法读取或打开该文件。

  

无法完成操作,因为无法找到“symlink.txt”的原始项目。

enter image description here

如果重要,我正在运行io.js v2.2.1 v2.5.0

2 个答案:

答案 0 :(得分:0)

拥有文件的绝对路径可以解决问题。

var fs = require("fs")
var path = require("path")

fs.symlinkSync(path.resolve("./file.txt"), path.resolve("./empty-dir/symlink.txt"), "file")

答案 1 :(得分:0)

./file.txt./empty-dir/symlink.txt

相对

尝试使用真实路径:

fs.symlinkSync(fs.realpathSync("./file.txt"), "./empty-dir/symlink.txt", "file")