Node.js 使用fs获取家长链
我想获取当前目录的父目录数组。目前我正在做这件事Node.js 使用fs获取家长链,node.js,Node.js,我想获取当前目录的父目录数组。目前我正在做这件事 function parseStructure(drive) { let structure = []; while (drive.length > 3) { structure.unshift(path.basename(drive)); drive = path.dirname(drive); } drive = drive.substr(0, 1); struct
function parseStructure(drive) {
let structure = [];
while (drive.length > 3) {
structure.unshift(path.basename(drive));
drive = path.dirname(drive);
}
drive = drive.substr(0, 1);
structure.unshift(drive);
return structure;
}
因为path.dirname('C://')
返回C://
。这可能会在Windows上工作,但在Linux上可能不会。如何检查当前目录是否为根目录
此路由C:\Users\user\SO
应返回['C'、'Users'、'user'、'SO']
的数组,此路由/usr/user/SO
应返回['usr'、'user'、'SO']
的数组。您可以尝试
path.resolve().split(path.sep);
// ['', 'home', 'myuser', 'mydir', 'my-nested-dir']
它将把目录数组打印到当前目录(process.cwd()
)
要从一开始就删除多余的空字符串,可以切片此数组:
path.resolve().split(path.sep).slice(1);
// ['home', 'myuser', 'mydir', 'my-nested-dir']
您是否尝试过
path.resolve().split(path.sep)
?事实上,我没有。如果你愿意,你可以把这个作为答案贴出来,否则我明天会给你。