Войти

Показать полную графическую версию : [решено] Запуск нескольких ехе в подкаталогах


hipergo
29-03-2011, 16:36
Хочется написать батник, сам не справляюсь =(
В одном каталоге множество подкаталогов, в каждом из которых есть файлы от unins000.exe до unins999.exe
Батник должен просканить все подкаталоги на наличие данных .ехе и поочередно запустить их с параметром /verysilent

Предполагается класть данный батник в тот же каталог.

megaloman
29-03-2011, 22:01
@Echo Off
Set Where=P:\Один каталог

FOR /F "usebackq delims=" %%i IN (`Dir "%Where%\unins???.exe" /B /O:N /S`) DO Call :Start "%%i"
GoTo :Eof

:Start

Set NN=%~n1
Set NN=1%NN:~-3%
Set MM=0
Set /A MM=%NN%*1 >Nul 1>Nul 2>Nul

If %NN% NEQ %MM% GoTo :Eof

%1 /verysilent
Если не делать провкрку на число после unins, то решение записывается в одну строчку@Echo Off
Set Where=P:\Один каталог
FOR /F "usebackq delims=" %%i IN (`Dir "%Where%\unins???.exe" /B /O:N /S`) DO "%%i" /verysilent
Если батник в корне каталога, то переменная Where, где прописывается рабочий каталог, не нужна и цикл в обоих случаях имеет вид FOR /F "usebackq delims=" %%i IN (`Dir unins???.exe /B /O:N /S`) DO ..... (далее по тексту конкретного батника)

hipergo
30-03-2011, 09:39
Благодарю за развернутый ответ, очень помогло.




© OSzone.net 2001-2012