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

Cách sử dụng câu lệnh Break và Continue trong Shell Scripts

Trong bài viết này, chúng ta sẽ xem xét cách sử dụng break tiếp tục trong các tập lệnh bash. Trong bash, chúng tôi có ba cấu trúc vòng lặp chính ( for , trong khi , cho đến khi ). Giải lao tiếp tục các câu lệnh là nội trang bash và được sử dụng để thay đổi luồng của các vòng lặp của bạn. Khái niệm ngắt và tiếp tục này có sẵn trong các ngôn ngữ lập trình phổ biến như Python .

$ type -a break continue
Cách sử dụng câu lệnh Break và Continue trong Shell Scripts

Thoát khỏi vòng lặp với Câu lệnh ngắt

break câu lệnh sẽ thoát ra khỏi vòng lặp và quyền điều khiển được chuyển cho câu lệnh tiếp theo trong vòng lặp. Bạn có thể chạy trợ giúp lệnh để nhận một số thông tin về break tuyên bố.

$ help break
Cách sử dụng câu lệnh Break và Continue trong Shell Scripts

Cú pháp cơ bản của ngắt.

$ break [n]

n is optional

Hãy xem ví dụ dưới đây. Đây là một vòng lặp for đơn giản lặp qua một phạm vi giá trị từ 1 đến 20 theo từng bước tăng dần là 2. Câu lệnh điều kiện sẽ đánh giá biểu thức và khi nó là true ($ val =9) sau đó nó sẽ chạy câu lệnh break và vòng lặp sẽ được kết thúc bỏ qua các lần lặp còn lại.

#!/usr/bin/bash

for val in {1..20..2}
do
  If [[ $val -eq 9 ]]
  then
     break
  else
  echo "printing ${val}"
fi
done
Cách sử dụng câu lệnh Break và Continue trong Shell Scripts

Bỏ qua lặp lại với câu lệnh tiếp tục

Điều gì sẽ xảy ra nếu bạn không muốn thoát hoàn toàn khỏi vòng lặp nhưng lại bỏ qua khối mã khi một điều kiện nhất định được đáp ứng? Điều này có thể được thực hiện bằng cách tiếp tục bản tường trình. Tiếp tục câu lệnh sẽ bỏ qua việc thực thi khối mã khi một điều kiện nhất định được đáp ứng và điều khiển được chuyển trở lại câu lệnh lặp cho lần lặp tiếp theo.

Để truy cập trợ giúp.

$ help continue
Cách sử dụng câu lệnh Break và Continue trong Shell Scripts

Hãy xem ví dụ dưới đây. Đây là ví dụ tương tự mà chúng tôi đã sử dụng để chứng minh câu lệnh break. Bây giờ khi Val được đánh giá là chín thì tiếp tục câu lệnh sẽ bỏ qua tất cả các khối mã còn lại và chuyển điều khiển cho vòng lặp for cho lần lặp tiếp theo.

#!/usr/bin/bash

for val in {1..20..2}
do
  If [[ $val -eq 9 ]]
  then
      continue
  fi
  echo "printing ${val}"
done
Cách sử dụng câu lệnh Break và Continue trong Shell Scripts

Nếu bạn biết python sau đó phá vỡ tiếp tục hành vi cũng giống như trong python. Nhưng python cung cấp thêm một câu lệnh điều khiển vòng lặp được gọi là pass .

Vượt qua giống như một null và trình thông dịch sẽ đọc nó nhưng sẽ không thực hiện bất kỳ thao tác nào. Nó chỉ đơn giản là kết quả không có hoạt động. Bash không cung cấp một tuyên bố tương tự nhưng chúng tôi có thể mô phỏng hành vi này bằng cách sử dụng từ khóa true hoặc dấu hai chấm (:) . Cả true và dấu hai chấm đều là nội trang của shell và không thực hiện bất kỳ thao tác nào.

$ type -a : true
Cách sử dụng câu lệnh Break và Continue trong Shell Scripts

Hãy xem ví dụ dưới đây. Khi có điều kiện câu lệnh được đánh giá là true ($ val =9) thì true câu lệnh sẽ không làm gì cả và vòng lặp sẽ tiếp tục.

#!/usr/bin/bash

for val in {1..20..2}
do
  If [[ $val -eq 9 ]]
  then
      true
  fi
  echo "printing ${val}"
done
Cách sử dụng câu lệnh Break và Continue trong Shell Scripts

Đó là nó cho bài viết này. Chúng tôi rất muốn nghe phản hồi có giá trị của bạn và bất kỳ mẹo nào bạn có.