Войти

Показать полную графическую версию : call выполняется только первый бат


Alexander_88
05-12-2015, 14:23
Здравствуйте, подскажите, пожалуйста как мне запустить бат, дождаться его завершения, потом запустить другой, и т.д.

Баты с таким содержимым:

@echo off
chcp 1251>nul

set quantity=5
set "source=C:\OneDrive\work\POSTS\start.txt"
set "border=//=================="

for %%i in ("%source%") do (
set new=%%~dpni_new%%~xi
call copy nul %%new%%>nul
)
set temp_file="%temp%\%random%.vbs"
for /f %%i in ('
findstr /rx "%border:/=\/%" "%source%"^| find /c /v ""
') do (
for /f %%j in ('
set /a %%i-1
') do (
if %%j lss %quantity% (
call:# %%j %%j
) else (
call:# %%j %quantity%
)
)
)
del %temp_file%

exit /b



:#


for /l %%i in (1 1 %1) do (
call set $%%random%%= %%i
)
for /f "tokens=* delims=$0123456789=" %%i in ('
set $^| findstr /v "^0"
') do (
set /a count+=1
for /f %%j in ('
set /a count
') do (
if %%j leq %2 (
echo WScript.StdOut.Write^(Split^(WScript.CreateObject^("Scripting.FileSystemObject"^).OpenTextFile^("%source%"^).ReadAll^(^),"%border%"^&vbCrLf^)^(%%i^)^)>%temp_file%
(
cscript //nologo %temp_file%
set /p="%border%"<nul
echo.
)>>"C:\OneDrive\work\POSTS\REZERV\start.txt"
) else (
exit /b
)
)
)

exit /b

Пробую командою "call имя файла"

Выполняет первый, а потом пишет "не удается найти файл: TEMP/4524.vbs"

c4uran
07-12-2015, 16:54
я бы выполнял:

start "" /wait "c:\script1"
start "" /wait "c:\script2"
start "" /wait "c:\script3"




© OSzone.net 2001-2012