Computer >> Máy Tính >  >> Lập trình >> Lập trình BASH

Thoát tập lệnh Bash bằng lệnh thoát, với ví dụ

Các tập lệnh Bash / Shell thường chạy tuần tự cho đến khi tất cả mã trong tệp đã được thực thi. lối ra lệnh sẽ thoát khỏi tập lệnh trước lệnh này dựa trên các điều kiện bạn chọn.

thoát Cú pháp lệnh

Đây là cú pháp của exit , có thể được sử dụng trong các tập lệnh Bash / Shell:

exit STATUS

Lưu ý rằng:

  • STATUS là một tham số tùy chọn đặt trạng thái thoát của script
    • Trạng thái thoát cho các chương trình khác biết liệu tập lệnh có được thực thi thành công hay không
    • Nó sẽ mặc định thành 0 hoặc trạng thái thoát của lệnh cuối cùng được thực thi bởi tập lệnh
    • Trạng thái thoát của 0 chỉ ra thành công. Bất kỳ giá trị lớn hơn 0 chỉ ra một thất bại

Tập lệnh Bash mẫu

Đây là một tập lệnh mẫu sử dụng exit lệnh, với phần chú thích giải thích chức năng của nó khi được sử dụng theo nhiều cách khác nhau:

#!/bin/bash

# A test variable which can be set to TRUE if there's an error
ERROR=false

# This line will always be printed as it comes before any exit command
echo "Hello LinuxScrew!"

# If there is an error...
if $ERROR ; then

    # Tell the user there was an error
    echo "There was an error"

    # Exit the program with a status of 1 (Indicating the script did not succeed)
    exit 1

fi

# Exit the script with a status of 0 (Indicating the script did succeed)
exit 0

# This line will never be printed as it follows an exit command, so it will never run
echo "This is a pointless line"

Dấu ‘#!’ Trong Tập lệnh Shell của Linux là gì?

Như được minh họa, exit là một lệnh đơn giản chỉ thoát tập lệnh, với trạng thái có thể được kiểm tra sau để xem tập lệnh có thành công hay không.

Kiểm tra trạng thái thoát của chương trình hoặc tập lệnh

Trạng thái thoát của lệnh chạy cuối cùng có thể được truy cập từ trình bao bằng lệnh sau:

echo $?

Còn đầu ra từ Script thì sao?

Đầu ra từ tập lệnh tách biệt với trạng thái thoát. Đầu ra chương trình và đầu ra từ các lệnh như echo tất cả sẽ được ứng dụng xuất ra bằng STDOUT - sau đó có thể được chuyển hướng, xem và lưu.