Javascript 如何使用node js解决长名称文件夹路径创建问题

Javascript 如何使用node js解决长名称文件夹路径创建问题,javascript,node.js,file,system,Javascript,Node.js,File,System,这不是一个真正的问题,因为我会回答它,但可能对其他人有用: 我在窗户上, 出于测试目的,我在文件夹中添加了大量文件夹, 然后我用这个代码 createFolder.js: var fs = require('fs') var root = './root/' var start = 0 var end = 10000 while (start < end) { fs.mkdirSync(root+start) root +=start+'/' } repair

这不是一个真正的问题,因为我会回答它,但可能对其他人有用: 我在窗户上, 出于测试目的,我在文件夹中添加了大量文件夹, 然后我用这个代码

createFolder.js:

    var fs = require('fs')

var root = './root/'

var start = 0 
var end = 10000





while (start < end)
{

fs.mkdirSync(root+start)
root +=start+'/' 
}
repair.js:

var fs = require('fs')
var uid = require('./uid.js')


var root= __dirname+'\\renamed\\'


var rootLength = root.split('\\')


console.log(root,rootLength.length)
var count = 0 
var pathIt = function(path){

 if(fs.existsSync(path) == true){

var dir = fs.readdirSync(path)

if(dir.length > 0)
{

for(d in dir ){


if(fs.existsSync(path+dir[d]) == true && fs.statSync(path+dir[d]).isDirectory() == true)
{


count++ 
console.log(count)
pathIt(path+dir[d]+'\\')


}else{

    console.log("count %s",count)


    console.log(path)
}


}

}else{


if(path != __dirname){


var way = path.split('\\')
console.log(way.length)
while(way.length != rootLength.length)
{
console.log(way.length)


var joinIt = way.join('\\')
if(fs.existsSync(joinIt) == true)
{fs.renameSync(joinIt,'./root/'+uid())}
    way.pop()
}
console.log(way)

}

}


}

}

pathIt(root)
使用此代码,您只需遍历上次创建的文件夹并获得完整的unc

然后,它将简单地将所有文件夹从最后一个移动到另一个文件夹根目录中,在这里,您可以使用ctrl+a在文件夹中选择所有文件夹,然后简单地将其删除

我希望这对任何人都有帮助

var fs = require('fs')
var uid = require('./uid.js')


var root= __dirname+'\\renamed\\'


var rootLength = root.split('\\')


console.log(root,rootLength.length)
var count = 0 
var pathIt = function(path){

 if(fs.existsSync(path) == true){

var dir = fs.readdirSync(path)

if(dir.length > 0)
{

for(d in dir ){


if(fs.existsSync(path+dir[d]) == true && fs.statSync(path+dir[d]).isDirectory() == true)
{


count++ 
console.log(count)
pathIt(path+dir[d]+'\\')


}else{

    console.log("count %s",count)


    console.log(path)
}


}

}else{


if(path != __dirname){


var way = path.split('\\')
console.log(way.length)
while(way.length != rootLength.length)
{
console.log(way.length)


var joinIt = way.join('\\')
if(fs.existsSync(joinIt) == true)
{fs.renameSync(joinIt,'./root/'+uid())}
    way.pop()
}
console.log(way)

}

}


}

}

pathIt(root)