Batch file 将文件复制到名称以这些文件名称的最后3个字符开头的目录

Batch file 将文件复制到名称以这些文件名称的最后3个字符开头的目录,batch-file,Batch File,我有一个文件夹,其中的文件名如下: xxx009.dcm xxx010.dcm xxx011.dcm . . . xxx250.dcm 我想复制文件名以特定数字结尾的每个文件,并将其粘贴到包含相同数字的文件夹中,例如: Copy xxx009.dcm to C:\Test\File9ab Copy xxx010.dcm to C:\Test\File10ab Copy xxx011.dcm to C:\Test\File11ab . . . Copy xxx250.dcm to C:\Tes

我有一个文件夹,其中的文件名如下:

xxx009.dcm
xxx010.dcm
xxx011.dcm 
.
.
.
xxx250.dcm
我想复制文件名以特定数字结尾的每个文件,并将其粘贴到包含相同数字的文件夹中,例如:

Copy xxx009.dcm to C:\Test\File9ab
Copy xxx010.dcm to C:\Test\File10ab
Copy xxx011.dcm to C:\Test\File11ab
.
.
.
Copy xxx250.dcm to C:\Test\File250ab
我是一个真正的初学者,需要创建一个批处理文件来为我做这项工作。任何帮助都将不胜感激

  • 使用迭代文件并使用
    ~n
  • 使用s从字符串中获取最后3个位置(需要复制到常规变量)
  • 用于通过从以1开头的值中减去1000来删除前导零
  • as 2+3.在代码块内完成,这也需要

  • 运行上述批处理后的示例树:

    > tree /F
    A:.
    └───test
        │   xxx009.dcm
        │   xxx010.dcm
        │   xxx011.dcm
        │
        ├───File10ab
        │       xxx010.dcm
        │
        ├───File11ab
        │       xxx011.dcm
        │
        └───File9ab
                xxx009.dcm
    

    很明显,您的目录名不包含文件名的最后三个字符!您的示例与您的问题不匹配,因此无法回答,除非您根据您要求我们帮助您修复的代码,并将其纳入合理标准。好吧,“我是初学者”不是不遵守本网站规则的借口。因此,这不是一个免费的代码/脚本编写服务,而是一个程序员问答网站。请带着这本书去学习!带着你的编码尝试回来,你的问题@很抱歉这么不专业。下次一定要遵守规则。非常感谢!这正是我几天来一直在努力做的事情!非常感谢!
    > tree /F
    A:.
    └───test
        │   xxx009.dcm
        │   xxx010.dcm
        │   xxx011.dcm
        │
        ├───File10ab
        │       xxx010.dcm
        │
        ├───File11ab
        │       xxx011.dcm
        │
        └───File9ab
                xxx009.dcm