0

我正在尝试使用 Windows 批处理命令将文件复制到新文件夹,但有些东西不起作用。我想知道我做错了什么。

这有效:

xcopy E:\folder\*.wav E:\wav\

但是因为我有很多文件夹名和文件夹名,所以我想使用以下命令对每个文件夹执行此操作:

xcopy E:\*\*.wav E:\wav\

但现在它说:

File not found - *.wav
0 File(s) copied

我该怎么做?

4

2 回答 2

1

从命令行(无批处理):

for /d %F in (e:\*) do @if /i "%F" neq "e:\wav" 2>nul xcopy "%F\*.wav" "e:\wav"

以上只会从根级文件夹复制文件。如果您想要.wav整个驱动器中的所有文件,那么您需要:

for /r "e:\" %F in (.) do @if /i "%F" neq "e:\wav\." 2>nul xcopy "%F\*.wav" "e:\wav"

如果将命令放在批处理文件中,则将百分比加倍。

请注意,来自不同文件夹的相同名称的不同文件会发生冲突 - 只有一个会在您的 \wav 文件夹中存在。

于 2013-09-09T10:39:58.957 回答
0

我做了一些搜索和尝试,这就是我想出的。

for /D %%d in (E:\*) do (
    for %%f in (%%d\*.wav) do (
        xcopy %%f E:\wav\
    )
)
于 2013-09-09T10:36:45.710 回答