Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Windows 将每个文件复制到每个文件夹_Windows_Batch File - Fatal编程技术网

Windows 将每个文件复制到每个文件夹

Windows 将每个文件复制到每个文件夹,windows,batch-file,Windows,Batch File,你的知识水平给我留下了深刻的印象 我的问题是: 我有一个文件夹,里面有31个MP3文件,每月每天一个 我需要一个批来创建名为01 02…31的文件夹并复制01.mp3 到01文件夹、02.mp3到02文件夹等等。 这在windows server 2k8 r2命令中是否可行 我尝试使用以下方法: FOR /F %%j in (filelist.txt) do ( FOR /F "tokens=1 delims=." %%i in (filelist.txt) do ( xcopy %%j e:\

你的知识水平给我留下了深刻的印象

我的问题是:

我有一个文件夹,里面有31个MP3文件,每月每天一个

我需要一个批来创建名为01 02…31的文件夹并复制01.mp3 到01文件夹、02.mp3到02文件夹等等。 这在windows server 2k8 r2命令中是否可行

我尝试使用以下方法:

FOR /F %%j in (filelist.txt) do (
FOR /F "tokens=1 delims=." %%i in (filelist.txt) do (
xcopy %%j e:\%%i\
))
还有很多其他的。。。 但批处理创建了31个文件夹,每个文件夹上有31个MP3文件

致以最良好的祝愿。
Leopoldo.

您有嵌套循环,每个循环都贯穿整个文件列表。这就是为什么最终会有31个文件夹,每个文件夹包含31个文件

相反,您应该只处理一次列表。试试这个:

FOR /F %%j IN (filelist.txt) DO XCOPY %%j E:\%%~nj\
~n
修饰符更改
%%j
的值,使其计算结果仅为name(
01.mp3
->
01


阅读有关
FOR
命令(
FOR/?
)的帮助,以获取有关修饰符的更多信息。

我对您的问题印象深刻:)嘿!你为什么不回答我的问题?!在
MD 01
然后
copy 01.mp3 01
然后再
MD 02
然后
copy 02.mp3 02
然后再….中你不喜欢什么?请原谅,我有大约3天的时间学习、设置和其他命令。