Nodejs readdirSync获取目录

时间:2017-07-14 00:04:17

标签: javascript node.js path

我正在尝试使用readdirSync使用绝对文件路径获取目录的内容:"~/code/ft/FullStack-Lesson-Plans/01-Class-Content"

我正在使用它:

let tempUnits = fs.readdirSync("~/code/ft/FullStack-Lesson-Plans/01-Class-Content");

我收到此错误:

(node:8736) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): Error: ENOENT: no such file or directory, scandir './~/code/
ft/FullStack-Lesson-Plans/01-Class-Content'
(node:8736) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will termin

我100%认为路径正确。

如何使用readdirSync以绝对文件路径获取目录的内容?

还是有另一种解决方案吗?

2 个答案:

答案 0 :(得分:1)

传递给节点fs函数的路径不能包含特定于shell的项(例如,波浪号或变量),因为它们直接传递给操作系统(操作系统不知道这些特殊的shell标记)。所以要么使用绝对路径,要么使用相对路径。

答案 1 :(得分:0)

我改变了吗

let tempUnits = fs.readdirSync("/Users/besteman/code/ft/FullStack-Lesson-Plans/01-Class-Content");`

正如@mscdex所说,它不接受~