windows10 64bit環境です。
//forで.mp3ファイルを順に処理対象にする

for /F %%a in ('dir /b *.mp3') do (
    echo.%%a
)

//hogeを含まない.mp3を削除
//仮にfuga.mp3が処理対象だったら

set str1=fuga.mp3
if x%str1:hoge=%==x%str1% (
    del %str1%
)

これらを組み合わせて

@echo on
setlocal enabledelayedexpansion
for /F %%a in ('dir /b *.mp3') do (
    set str1=%%a
    if x!str1:hoge=!==x!str1! (
        echo.!str1!
    )
)
pause

このように処理したのですが
エラーなのかすぐにコマンド入力画面が消えます。
そしてファイルも削除できません。

解決方法をお教えいただけると大変助かります。
よろしくお願いいたします。