使用通配符移动目录

时间:2012-10-24 17:29:16

标签: command-line move

我有一系列需要移动的文件夹,如下所示:


    • ABC1
    • ABC2
    • DEF1
    • DEF2
    • ...
    • XYZ1
    • XYZ2

我想将以“1”结尾的所有子目录及其内容移动到新文件夹(block1)中,并在“2”中执行相同的结尾操作。我认为它会涉及某种for循环和通配符“??? 1”,但我找不到解决方案。

编辑**

另一个问题,只是为了让事情变得更加困难。假设我在每个文件夹中都有一组我想移动的特定文件:


    • ABC1
      • ABC_cath1_001
      • ABC_cath1_002
      • ABC_cath2_001
      • ABC_cath2_002

我只想将ABC_cath1 *文件移到新文件夹中 - 有一种简单的方法吗?

2 个答案:

答案 0 :(得分:2)

 md temp 
 for /f %a in ('dir /b *1') do move %a temp\%a
 ren temp block1


 md temp 
 for /f %a in ('dir /b *2') do move %a temp\%a
 ren temp block2

答案 1 :(得分:1)

假设此处列出的内容是文件夹

move C:\parent\???1 C:\block1 

move C:\parent\???2 C:\block2 

如果您的工作只是移动这些文件夹这些命令将起作用,我不这么认为您需要编写带循环的批处理脚本