Вызовите один пакет из другого, затем запустите службы

Я пытаюсь вызвать пакет на локальной машине из другого пакета. Затем я пытаюсь запустить службы на удаленном компьютере. Вот мой код:

call C:\Oracle\Middleware\user_projects\epm_system\bin\start.bat > SS.log
sc \\OtherMachine start "Service1" >> SS.log
sc \\OtherMachine start "Service2" >> SS.log

Я уже подтвердил, что могу запускать службы без предварительного запуска start.bat. Однако, когда я пытаюсь вызвать start.bat, используя первую строку кода, он просто закрывается после завершения без выполнения двух последних строк.


person Drew Rush    schedule 12.02.2013    source источник
comment
Означает ли это, что он не выполняет последние две строки кода, который вы разместили выше?   -  person Robert Harvey    schedule 12.02.2013
comment
Да, это то, что я говорю.   -  person Drew Rush    schedule 12.02.2013
comment
Странный. Содержит ли start.bat команду EXIT или GOTO:EOF? Если это так, попробуйте изменить его на EXIT /B robvanderwoude.com/exit.php.   -  person Robert Harvey    schedule 12.02.2013
comment
Не могу изменить партию. Есть ли способ вызвать его в новом окне, чтобы оно закрылось и продолжало работать первое?   -  person Drew Rush    schedule 12.02.2013
comment
Нет, если он содержит команду EXIT. Команда EXIT, по-видимому, убивает всю партию. Вам нужно будет написать программу, например: stackoverflow.com/a/361121/102937   -  person Robert Harvey    schedule 12.02.2013
comment
@RobertHarvey Как насчет использования start /wait вместо вызова? Он должен быть фактически таким же (в данном конкретном случае), но не убивать вызывающего абонента, поскольку он выполняется в отдельном экземпляре cmd.   -  person wmz    schedule 12.02.2013


Ответы (1)


вы можете вызвать cmd.exe в своем первом пакете, который не закроет его, если второй пакет содержит выход. пример:
call.cmd

cmd /c "c:\temp\test.cmd"
echo end of first batch

test.cmd

@echo off
echo test 
exit

результат :

C:\temp>call.cmd
test
end of first batch
person Loïc MICHEL    schedule 12.02.2013
comment
Я пробовал это, но это не сработало. Но спасибо за совет. - person Drew Rush; 12.02.2013
comment
@DrewRush, пожалуйста, предоставьте более подробную информацию: в чем ошибка? Что внутри start.bat? - person Loïc MICHEL; 12.02.2013
comment
Не имеет значения. Я выставляю счет по часам, поэтому я могу потратить только определенное количество времени на решение той или иной проблемы. Я нашел другой подход, который работает. Спасибо за ваше время и интерес, я очень благодарен. - person Drew Rush; 12.02.2013