将文件从一个文件夹复制到同一文件夹名称批处理文件

时间:2014-03-30 07:28:49

标签: batch-file cmd subdirectory

我在E:\ example中有文件夹。在那里有5个文件夹

1111

2222

3333

4444

5555

D:\ test中还有另一个文件夹。其中有5个文件

mu1111.txt

mu2222.txt

mu3333.txt

mu4444.txt

mu5555.txt

Filelist.txt中

这里有filelist.txt文件,其中包含所有文件名。

这里想要我将测试文件夹文件复制到示例文件夹子目录及其各自的编号。例如,

来自测试文件夹的mu1111.txt文件被复制到Example文件夹的1111子目录。

这是我的代码:

IF EXIST filelist.txt( for / f %% i in(filelist.txt)do mu mu %% i E:\ example \ %% ~ni \ %% ~ni.txt )ELSE( echo filelist.txt丢失。 )

我试过,但它在这里显示路径错误:\ %% ~ni \

我怎么解决它我无法理解?

1 个答案:

答案 0 :(得分:0)

要避免对文件名进行子字符串处理,因为这种情况就足够了,您可以反转问题。而不是为每个文件移动到相应的文件夹,您可以为每个文件夹移动相应的文件。

for /d %%a in ("e:\example\*") do if exist "d:\test\mu%%~na.txt" (
    copy "d:\test\mu%%~na.txt" "%%~fa"
)