我需要帮助来移动我的库中的文件。我已搜索并阅读了几个小时,无法找到合适的解决方案。
我的目录看起来像这样
D:Music中有数以千计的这些条目。文件夹名称'名称 - 标题'各有不同。
我想将xxxx-type.jpg移动到名为' artwork'的新文件夹中。在'名称 - 标题'夹。我要移动的文件都以' -type.jpg'。
结尾新目录如下所示:
我试过这个:
for /d %%a in ("D:Music\Name - Title\*") do mkdir "%%~fa\artwork" 2>nul
这会在'名称标题'中创建新文件夹。文件夹。但显然不会移动文件。
我也试过这个来创建文件夹并移动文件:
@echo off
for /f "delims=" %%a D:Music\Name - Title\ ('dir /s/b/a-d *.* ^| find /i "*-type.jpg"') do (
if not exist "%%~dpaartwork" md "%%~dpaartwork"
move "%%~fa" "%%~dpaartwork")
以上什么都不做。任何帮助表示赞赏。
由于
答案 0 :(得分:0)
试试这个
@echo off& SetLocal
for /f "delims=" %%a in ('dir /ad /b "D:\Music\"') do (
cd /d "%%~fa"
if exist *-type.jpg (
if not exist artwork md artwork
move *-type.jpg artwork
)
)
这将直接浏览D:\Music
中的所有文件夹,如果该文件夹中有一些*-type.jpg
个文件,它会将它们移动到子文件夹artwork
(如果有的话,将会创建它们不存在)。
如果您在子文件夹中也有*-type.jpg
个文件夹,则可以使用此
@echo off& SetLocal
for /f "delims=" %%a in ('dir /ad /b /s "D:\Music\"') do (
cd /d "%%~fa"
if /i not "%%~na"=="artwork" if exist *-type.jpg (
if not exist artwork md artwork
move *-type.jpg artwork
)
)
答案 1 :(得分:0)
这应该有效:
@echo off
for /R D:\Music %%F in (*-type.jpg) do (
if not exist "%%~pFartwork" md "%%~pFartwork"
move "%%F" "%%~pFartwork"
)