1.0.1 • Published 3 years ago

dir-split v1.0.1

Weekly downloads
-
License
ISC
Repository
github
Last release
3 years ago

目录拆分

给定一个目录,将其拆分为独立的各个目录,应用场景: 从当前目录向上一级查找可能存在package.json的文件所在目录,可将执行结果倒序拼接上/package.json,遍历判断文件是否存在,存在就结束循环,即可找到最近的package.json文件

const dirSplit = require("dir-split");
// 带盘符 - 默认分隔符
console.log(dirSplit('C:\\a\\b\\c\\d')); // [ 'C:/a', 'C:/a/b', 'C:/a/b/c', 'C:/a/b/c/d' ]
console.log(dirSplit('C:\\a\\b\\c\\..\\d')); // [ 'C:/a', 'C:/a/b', 'C:/a/b/d' ]
console.log(dirSplit('C:\\a\\b\\c\\..\\..\\d')); // [ 'C:/a', 'C:/a/d']
console.log(dirSplit('C:\\a\\b\\c\\..\\..\\..\\d')); // [ 'C:/d' ]
// 不带盘符 - 默认分隔符
console.log(dirSplit('\\a\\b\\c\\d')); // [ '/a', '/a/b', '/a/b/c', '/a/b/c/d' ]
console.log(dirSplit('\\a\\b\\c\\..\\d')); // [ '/a', '/a/b', '/a/b/d' ]
console.log(dirSplit('\\a\\b\\c\\..\\..\\d')); // [ '/a', '/a/d' ]
console.log(dirSplit('\\a\\b\\c\\..\\..\\..\\d')); // [ '/d' ]

// 带盘符 - 自定义\分隔符 console.log(dirSplit('C:\a\b\c\d')); // 'C:\a', 'C:\a\b', 'C:\a\b\c', 'C:\a\b\c\d' console.log(dirSplit('C:\a\b\c\..\d')); // 'C:\a', 'C:\a\b', 'C:\a\b\d' console.log(dirSplit('C:\a\b\c\..\..\d')); // 'C:\a', 'C:\a\d' console.log(dirSplit('C:\a\b\c\..\..\..\d')); // 'C:\d' // 不带盘符 - 自定义\分隔符 console.log(dirSplit('\a\b\c\d')); // '\a', '\a\b', '\a\b\c', '\a\b\c\d' console.log(dirSplit('\a\b\c\..\d')); // '\a', '\a\b', '\a\b\d' console.log(dirSplit('\a\b\c\..\..\d')); // '\a', '\a\d' console.log(dirSplit('\a\b\c\..\..\..\d')); // '\d'

// 支持. 或 ..开头 console.log(dirSplit('./../../', '/', __dirname)); // '/Users', '/Users/snail', '/Users/snail/Desktop'