在每个子文件夹中查找第一个Movie文件,并创建同名

时间:2015-09-07 16:50:46

标签: loops batch-file

我希望批处理脚本能够在所有子文件夹中找到第一个电影文件(首先是字母顺序),并创建一个具有相同名称的txt文件。我得到了包含文件的所有文件夹。第一个for循环,但第二个似乎没有按预期工作 电影格式:wmv mkv mp4 avi

@echo off
set CurDir=%CD%
for /f "tokens=*" %%G in ('dir /b /s /a:d %CurDir%') do (
    For /f "tokens=*" %%H in ('dir /A:-D "%%G"') do (
        echo %%H
    )
)
echo %CurDir%
pause

1 个答案:

答案 0 :(得分:1)

@echo off
    setlocal enableextensions disabledelayedexpansion
    set "curdir=%CD%"

    for /r "%curdir%" /d %%d in (*) do (
        pushd "%%~fd" && (
            set "first=1"
            for /f "delims=" %%a in ('
                dir /b /a-d /on *.wmv *.mkv *.mp4 *.avi 2^>nul
            ') do if defined first (
                set "first="
                type nul > "%%~nxa.txt"
            )
            popd
        )
    ) 

对于结构中的每个文件夹,如果文件夹中的第一个文件使用找到的文件的名称和扩展名生成txt文件,则更改为文件夹和列表中的每个文件。