Tôi đã có một tập tin thực thi thực hiện một số điều. Nếu một trong số họ thất bại, tôi muốn thoát khỏi toàn bộ chương trình. Ví dụ:Làm cách nào để thoát khỏi chương trình theo lô khi có lỗi?
@echo off
type foo.txt 2>> error.txt >> success.txt
mkdir bob
Nếu file foo.txt không được tìm thấy sau đó tôi muốn thông điệp stderr gắn vào file error.txt, khác nội dung của foo.txt được nối vào success.txt. Về cơ bản, nếu lệnh type trả về một stderr thì tôi muốn tệp batch để thoát và không tạo thư mục mới. Làm thế nào bạn có thể biết nếu một lỗi xảy ra và quyết định xem bạn có cần tiếp tục lệnh tiếp theo hay không?
tôi thêm mã NẾU KHÔNG ERRORLEVEL 0 EXIT/B echo% errorlevel% trước lệnh mkdir bob, nhưng bất kể giá trị của ERRORLEVEL (tức là 0 hoặc 1) thư mục vẫn được tạo. Vì vậy, về cơ bản, ERRORLEVEL đang được thiết lập với một giá trị khác nhau cho dù lệnh loại tìm thấy tệp hay không, nhưng chương trình không thoát. Suy nghĩ? – Notorious2tall