2011-12-13 39 views
23

Tôi có một cửa sổ tập tin batch để trông giống như:Làm cách nào để ngăn chặn tệp Windows Batch thoát khỏi sớm?

C:\DoStuff.cmd 
move output.bak C:\newfolder\output.bak 

Vấn đề tôi có là DoStuff.cmd thực hiện một chương trình java mà thoát khi hoàn thành đợt chạy trở lại dấu nhắc lệnh. Dòng 2 không bao giờ bị trúng.

tôi đã thử những điều sau đây thay vì để thực hiện lệnh trong một cửa sổ mới:

start "My program" /WAIT C:\DoStuff.cmd 
move output.bak C:\newfolder\output.bak 

gì xảy ra với bên trên là cửa sổ lệnh mới sinh ra file chạy cmd và thoát trở lại một dấu nhắc lệnh chờ và cửa sổ không bao giờ đóng lại, để cửa sổ lệnh đầu tiên chờ đợi và cửa sổ thứ hai không làm gì bị kẹt sau khi hoàn thành bước một.

Làm cách nào để thực hiện lệnh đầu tiên mà không có kiểm soát chạy hàng loạt bằng cách nào đó?

nhiều cảm ơn trước

Trả lời

34

Bạn có thể sử dụng DOS call command:

@echo off 
call C:\DoStuff.cmd 
echo Exit Code = %ERRORLEVEL% 

Sau khi nhận được mã lỗi bạn có thể tiến hành ví dụ với:

if "%ERRORLEVEL%" == "1" exit /B 1 
Các vấn đề liên quan