Node.js写入/tmp路径的文件找不到?tmp文件夹实际位置在哪
解答
你代码里写的/tmp/books.txt是绝对路径,不是相对于项目文件夹的相对路径,所以文件不会生成在你的项目目录里,找不到属于正常情况,不同操作系统下这个路径对应的实际位置如下:
- 用 macOS 或者 Linux 系统的话,
/tmp是系统根目录下的全局临时文件夹,直接打开终端输入open /tmp(macOS)或者xdg-open /tmp(带桌面环境的Linux系统),回车就能直接打开对应目录,里面就能找到生成的books.txt。注意这个目录是系统自动管理的临时目录,会定期清理过期文件,不要存放需要长期保留的内容。 - 用 Windows 系统的话,Node.js 会自动把Unix风格的
/tmp路径映射到当前用户的临时文件夹,默认路径是C:\Users\你的用户名\AppData\Local\Temp,不用手动拼接路径,直接打开资源管理器,在顶部地址栏输入%TEMP%按回车,就能快速跳转到这个目录,进去就能找到目标文件。
如果不想对应系统排查路径,有个百分百能定位到文件的方法:在现有代码的写入成功回调里加一行代码,运行时控制台会直接打印文件的完整真实路径,顺着路径找即可:
console.log("文件实际存储路径:", fs.realpathSync("/tmp/books.txt"))
如果你本来就想把文件生成在项目目录下,把写入路径改成相对路径./tmp/books.txt就可以,记得提前在项目根目录手动创建名为tmp的文件夹,否则写入时会报路径不存在的错误。
内容的提问来源于stack exchange,提问作者bssyy78
相关产品推荐
相关产品推荐

