【问题标题】:PowerShell script to Move files into multiple sub-directories of 1000 files eachPowerShell 脚本将文件移动到多个子目录中,每个子目录包含 1000 个文件
【发布时间】:2014-04-26 09:24:51
【问题描述】:

我有一种情况,从损坏的 RAID 驱动器恢复文件后,我现在有一个文件夹,其中包含大约 110,000 个 RAW 图像,占用大约 1 TB。 每个文件按从 00000001.CR2 到 00110232.CR2 的数字顺序命名。

由于此内容的大小和体积,此文件夹或多或少无法在我的桌面上使用。

我需要做的是一次将大约 1,000 个文件从这个主文件夹移动到名为 001、002、003 等的子文件夹中(我只能处理 1,000 个文件的文件夹!)

因此,在 PowerShell 中,我可以迭代文件夹的所有子项并移动它们,但是我可以通过管道输入一个命令,它一次需要 1,000 个文件名并将它们移动到按顺序编号的文件夹中吗?

谢谢大家。

【问题讨论】:

    标签: powershell


    【解决方案1】:

    可能是这样的吧?

    for ( $i=0 ; $i -le 110 ; $i++ )
     {
      $folder = $i.ToString('000')
      $file = $i.ToString('00000')
    
      New-Item -ItemType Directory -Path 'c:\imagesfolder\' -Value $folder 
      Move-Item -Path "C:\imagesfolder\$file*.CR2" -Destination "c:\imagesfolder\$folder" 
     }
    

    这不会迭代所有文件,它只是从 000-110 和 00000-00110 创建连续的零填充字符串,然后使用它们创建目录,并以通配符模式用于移动项。

    【讨论】:

      猜你喜欢
      • 2019-11-20
      • 1970-01-01
      • 1970-01-01
      • 2011-07-07
      • 2016-06-09
      • 2020-06-17
      • 2023-04-07
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多