/ / windows .bat arquivo como listar recursivamente todos os arquivos do tipo * .mp3 - windows, diretório, arquivo em lote

arquivo .bat do windows como listar recursivamente todos os arquivos do tipo * .mp3 - windows, directory, batch-file

ola eu quero recursivamente listar o caminho absoluto para todos os arquivos que terminam com mp3 de um determinado diretório que deve ser dado como diretório relativo.

Eu gostaria de retirar também o diretório do arquivo e eu li que as variáveis ​​que estão em um escopo devem ser colocadas em! s. isso esta certo?

meu código atual se parece com isso:

for /r %%x in (*.mp3) do (
set di=%%x
echo directory !di!
C:bla.exe  %%x !di!
)

obrigado!

Respostas:

65 para resposta № 1

Como sobre o comando DIR...

dir /s/b *.mp3

... o comando acima pesquisará o caminho atual e todos esses filhos. Para obter mais informações sobre como usar este comando, abra uma janela de comando e digite DIR /?


5 para resposta № 2

Este arquivo em lote demonstra como extrairelementos de um nome de arquivo da variável em um loop for. Salve isso como listfiles.bat e execute "listfiles somefolder * .mp3". Eu configurei o arquivo como uma sub-rotina no arquivo de lote para que você possa inseri-lo em seus próprios scripts.

Você também pode executar "for /?" em um shell cmd para mais informações sobre o comando for.

@echo off
setlocal enableextensions enabledelayedexpansion
call :find-files %1 %2
echo PATHS: %PATHS%
echo NAMES: %NAMES%
goto :eof

:find-files
set PATHS=
set NAMES=
for /r "%~1" %%P in ("%~2") do (
set PATHS=!PATHS! "%%~fP"
set NAMES=!NAMES! "%%~nP%%~xP"
)
goto :eof

1 para resposta № 3

Você pode adicionar os resultados a um arquivo com "> [nome do arquivo]"