Javascript 如何使用node js解决长名称文件夹路径创建问题
这不是一个真正的问题,因为我会回答它,但可能对其他人有用: 我在窗户上, 出于测试目的,我在文件夹中添加了大量文件夹, 然后我用这个代码 createFolder.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
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)