Javascript Javscript fs模块:输出写入到哪里?

Javascript Javscript fs模块:输出写入到哪里?,javascript,fs,absolute-path,pathname,Javascript,Fs,Absolute Path,Pathname,我正在使用fsfilesystem JS模块写入文件。我希望此文件位于~/Desktop文件夹中,因此我执行以下操作: var fs = require('fs'); let a = "text" fs.writeFile('~/Desktop/output.txt', a, () => {}) 这运行时没有错误,但我在桌面上或系统中的任何地方都看不到output.txt文件。当我只做output.txt而不是~/Desktop/output.txt时,它工作得很好;它将输出保存在我当前

我正在使用
fs
filesystem JS模块写入文件。我希望此文件位于
~/Desktop
文件夹中,因此我执行以下操作:

var fs = require('fs');
let a = "text"
fs.writeFile('~/Desktop/output.txt', a, () => {})
这运行时没有错误,但我在桌面上或系统中的任何地方都看不到
output.txt
文件。当我只做
output.txt
而不是
~/Desktop/output.txt
时,它工作得很好;它将输出保存在我当前目录下的文件
output.txt


有人知道这里发生了什么吗?

节点不会将特定于bash的快捷方式tilde(~)扩展到您的主目录


指定完整路径或使用类似的包。

节点不会将特定于bash的快捷方式tilde(~)展开到主目录


指定完整路径或使用类似的包。

我认为nodejs不理解
~
(如果我错了,请纠正我),但正如您标记的那样,您需要使用绝对路径。您可以使用它来获取主目录,这要感谢两个^^^都有效。下面的答案也是使用expand tilde。我认为nodejs不理解
~
(如果我错了,请纠正我),但正如您标记的那样,您需要使用绝对路径。您可以使用它来获取主目录,这要感谢两个^^^都有效。下面的答案也是用展开图表示的。