将包含许多文件的文件夹分成多个子文件夹(Windows 10)

时间:2017-01-06 08:45:36

标签: batch-file windows-10 windows-explorer

我有一个包含110.000个文件的文件夹,我想要一种方法将这个文件夹分成多个子文件夹,每个文件夹包含3000个文件(可能有一个批处理脚本?)。 (尝试使用WinExplorer进行复制/粘贴会陷入“准备复制”。)

例如:

BigFolder
  |
NewFolder
|     |    |    |    |
Sub1  Sub2 Sub3 Sub4 Sub5...

1 个答案:

答案 0 :(得分:2)

我很惊讶地发现我的情况。 我有30,000个文件需要排序,所以我在这个页面上提问: Fast methods to copy(move) files in batch file

这是Compo的脚本:

@Echo Off
If /I Not "%__CD__%"=="%~dp0" PushD "%~dp0" 2>Nul||Exit/B
taskkill /f /im explorer.exe >nul
taskkill /f /im SearchIndexer.exe >nul
sc stop WSearch >nul
sc config WSearch start= disabled >nul

SetLocal EnableDelayedExpansion
Set "DirN=-1"

:Check_DirN
Set/A "DirN+=1"
If Exist "%DirN%" GoTo Check_DirN
cls
echo Moving files to Directory %DirN%...
Set "limit=2999"
MD "%DirN%"
For %%A In (*.html) Do (
    RoboCopy . "%DirN%" "%%A" /MOV 1>NUL
    Set/A "limit-=1"
    If !limit! Lss 0 GoTo Check_DirN
)
Echo(Task Done!

start explorer.exe
start SearchIndexer.exe
sc config WSearch start= delayed-auto >nul
sc start WSearch >nul
Timeout -1 1>Nul

这就是我使用的内容,为此我编辑了一段时间:

taskkill

如果需要,您可以删除startscapp.post('/api/departments/patients/:id', function(req, res) { //first, find the document department.findById(req.params.id, function(err, dept){ //make changes accordingly dept.patient.firstname = 'Changed' dept.save(function(err){ res.send ('Saved'); }) }); }); 部分。 我添加了这部分,因为资源管理器和Windows搜索索引器在移动文件时会浪费内存。我建议您使用管理员权限运行脚本。

尝试以小规模测试脚本以查看它是否有效。