Batch file 如何根据子文件夹中的PDF文件的文件名移动这些文件

Batch file 如何根据子文件夹中的PDF文件的文件名移动这些文件,batch-file,Batch File,我在一个文件夹中有376140个PDF文件。我想按名称将它们移动到子文件夹中。因为每个PDF文件都被命名为SNxxxxxx(从SN000001开始)。我希望每100.000个都在一个子文件夹中,每10.000个都在该子文件夹中。最终结果应该是: d:\Doc\SN000001-SN100000\SN000001-SN010000\SN000005.pdf 更合乎逻辑的排序不是从00001到10000,从10001到20000等等,而是从00000到09999,从10000到19999等等

我在一个文件夹中有376140个PDF文件。我想按名称将它们移动到子文件夹中。因为每个PDF文件都被命名为
SNxxxxxx
(从
SN000001
开始)。我希望每100.000个都在一个子文件夹中,每10.000个都在该子文件夹中。最终结果应该是:

d:\Doc\SN000001-SN100000\SN000001-SN010000\SN000005.pdf  

更合乎逻辑的排序不是从
00001到10000
,从
10001到20000
等等,而是从
00000到09999
,从
10000到19999
等等

而且编写代码更容易:

for /L %%i in (0,1,9) do (
  for /L %%j in (0,1,9) do (
    if exist SN%%i%%j*.pdf (
      echo md "D:\Doc\SN%%i00000-SN%%i99999\SN%%i%%j0000-SN%%i%%j9999"
      echo move "SN%%i%%j????.pdf" "D:\Doc\SN%%i00000-SN%%i99999\SN%%i%%j0000-SN%%i%%j9999\"
    )
  )
)
当输出看起来正常时,移除回声