Về cơ bản, giả sử rằng tôi có một tập tin batch gọi myapp1.exe và myapp1.exe thoát với Exit Code 1. Có thể tập tin batch nắm bắt thông tin này và buộc tập tin thực thi thoát với cùng một mã thoát hoặc thực hiện một số logic khác?Tệp hàng loạt có thể thu thập các mã thoát của các lệnh mà nó đang gọi không?
Trả lời
@echo off
rem ...
set errorlevel=
MyApp1.exe
exit /b %errorlevel%
sẽ là biến thể rõ ràng.
Bạn có thể thử sử dụng errorlevel
s. Một số thông tin khác here.
Đô, hoặc không. Không có "thử". (Và trong trường hợp này, nếu bạn sử dụng errorlevel, nó sẽ hoạt động;) – ewall
Câu trả lời được chấp nhận là đúng, nhưng nếu bạn đang sử dụng call
để gọi một tập lệnh lô khác và tập lệnh lô thứ hai đang sử dụng SetLocal
, bạn có thể cần phải sử dụng mẹo phân tích cú pháp để thực hiện việc này. Nếu bạn đang chạy vào điều này, thêm đoạn mã sau trước exit b
của bạn:
ENDLOCAL&set myvariable=%myvariable%
Bây giờ giá trị của myvariable
được tạo sẵn cho các bối cảnh gọi điện thoại và bạn có thể nhìn thấy giá trị trong kịch bản khác.
Tài liệu tham khảo:
https://stackoverflow.com/a/16167938/89590
http://www.borngeek.com/2008/05/22/exiting-batch-file-contexts/
% ERRORLEVEL% các cửa hàng giá trị trả về của lệnh thực thi cuối cùng
call program.exe
echo program.exe returns "%ERRORLEVEL%"
IF %ERRORLEVEL% NEQ 0 (
echo FAILED
)
Điều này đã được nêu ra bởi câu trả lời được chấp nhận từ nhiều năm trước, dường như với tôi. –
- 1. Sử dụng thời gian chờ của tệp hàng loạt mà không cần lệnh lặp lại?
- 2. Sao chép dấu nhắc lệnh bằng các tệp hàng loạt
- 3. Cách gọi các trình thu thập dữ liệu cụ thể từ một tập lệnh Python khác
- 4. Thu thập trên các tệp thông thường
- 5. Không thể di chuyển các hàng trong UITableView ngay cả khi trình thu thập đang hiển thị
- 6. Kịch bản lệnh hàng loạt của Windows để ẩn các tệp bị ẩn bởi vi rút
- 7. -Mã thoát của mã lệnh không giống như mã thoát của mã lệnh
- 8. Hàng loạt: Thoát bằng dấu mũ
- 9. Các mã thoát hiểm của javaws có bị hỏng không?
- 10. Django: Chỉ thu thập các tệp tĩnh đã thay đổi
- 11. Có thể xếp hàng các lệnh trong Vim không?
- 12. Thu thập các tệp nhị phân cho SVN
- 13. Có thể móc các vật thể được GC thu thập không?
- 14. Chạy hàng loạt các công cụ bảo vệ mã VS
- 15. GC của các đại biểu, tôi đang thiếu gì? (đại biểu của tôi không được thu thập)
- 16. Nếu điều kiện trong các tệp hàng loạt
- 17. Thu thập đầu ra của lệnh ngoài bằng OCaml
- 18. Đoạn mã cho năng suất - thu thập mã tốt
- 19. Có thể chạy các kịch bản lệnh Node.js mà không cần gọi `nút` không?
- 20. Cách thu thập phản hồi của khách hàng?
- 21. Hàng loạt để buộc đóng tất cả các tệp excel
- 22. Sử dụng dấu nhắc lệnh để gọi một tệp hàng loạt trong một thư mục con
- 23. Grails: cách thu thập tất cả các tin nhắn
- 24. Tệp thu thập dẫn đến lỗi LGHT0231
- 25. làm cách nào để nhận được sbt thu thập tất cả các tệp jar mà mã của tôi phụ thuộc vào một địa điểm?
- 26. EF4 có thể hỗ trợ cập nhật hàng loạt không?
- 27. Kịch bản lệnh hàng loạt không được thực thi nếu chcp được gọi là
- 28. Thay thế biến thể tre trong tệp hàng loạt
- 29. Tệp hàng loạt ngừng chạy sau lệnh đầu tiên
- 30. Đổi tên hàng loạt các tệp trong một thư mục
thnx, cho đến khi powershell có thể trả về các mã thoát âm, tôi buộc phải tiếp tục gói các kịch bản PowerShell của mình với các script batch ~ – MDMoore313
Dường như ít nhất PowerShell v3 có thể trả về các mã thoát âm: 'powershell 'exit -5'; $ LASTEXITCODE' mang lại '-5' cho tôi. – Joey