Executa recursivamente todos os arquivos com uma extensão específica via linha de comando

2

Eu preciso executar todos os arquivos .sfv recursivamente a partir de um diretório específico. Eu vim com o abaixo até agora.

for /r "c:\mydir\" %x in (*.sfv) do start "%x"

Este código funciona; no entanto, eu preciso que ele execute cada arquivo a cada 5 minutos após a execução?

    
por menteith 20.01.2017 / 23:33

1 resposta

2

This code works; however, I need it to run each file in every 5 minutes upon execution?

Já que seu código já funciona e você o mostra e só precisa esperar 5 minutos por cada iteração no loop para executar o arquivo com o iniciar após a execução da primeira, você pode usar a condição redirecionamento e executar uma nul ping para o endereço de loopback usando a opção -n e especifique 300 segundos em que cada resposta de ping é aproximadamente um segundo ; Eu sempre adiciono um. Eu também adicionei "" como o primeiro argumento ao comando iniciar para especificar um título vazio.

Além disso, você pode incorporar o Tempo limite na iteração do loop e redirecione para ele com um período de espera de 300 segundos usando a opção /T e especificando o valor 300 second posteriormente.

Usando o método Ping

for /r "c:\mydir\" %x in (*.sfv) do start "" "%x" & ping 127.0.0.1 -n 301 > nul

Usando o método de atraso de tempo limite

for /r "c:\mydir\" %x in (*.sfv) do start "" "%x" & timeout /T 30 > nul

Mais recursos

por 21.01.2017 / 01:30