Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Lập Trình Bash

Cú pháp Bash If-Else:Làm chủ các quyết định của Linux Shell

Cú pháp Bash If-Else:Làm chủ các quyết định của Linux Shell

Khi viết mã, bạn có thể cần đưa ra quyết định dựa trên các điều kiện nhất định. Điều kiện là các biểu thức đánh giá thành biểu thức boolean (true hoặc false ).

Các câu lệnh giúp thực thi các nhánh mã khác nhau dựa trên các điều kiện nhất định được gọi là câu lệnh có điều kiện.

if...else là một trong những câu lệnh điều kiện được sử dụng phổ biến nhất. Giống như các ngôn ngữ lập trình khác, tập lệnh Bash cũng hỗ trợ if...else các tuyên bố. Và chúng ta sẽ nghiên cứu chi tiết điều đó trong bài viết blog này.

Cú pháp của if Tuyên bố

Bạn có thể sử dụng if phát biểu theo nhiều cách khác nhau. Cấu trúc chung của if tuyên bố như sau:

  • Sử dụng if chỉ câu lệnh:if...then...fi
  • Sử dụng và if với else câu lệnh:if...then...else...fi tuyên bố
  • Sử dụng nhiều else câu lệnh có if :if..elif..else..fi

##

Cách sử dụng if Tuyên bố

Khi bạn đang sử dụng một if câu lệnh, cú pháp như sau:

if [ condition ]
then
 statement
fi

Lưu ý rằng dấu cách là một phần của cú pháp và không nên xóa.

Hãy xem một ví dụ trong đó chúng ta so sánh hai số để tìm xem số đầu tiên có nhỏ hơn hay không.

#! /bin/sh
a=5
b=30
if [ $a -lt $b ]
then
 echo "a is less than b"
fi

Nếu bạn chạy đoạn mã trên, điều kiện if [ $a -lt $b ] ước tính là True , và câu lệnh bên trong câu lệnh if sẽ thực thi

Đầu ra:

a is less than b

Cách sử dụng if .. else Tuyên bố

Khi bạn đang sử dụng if và bạn muốn thêm điều kiện khác thì cú pháp như sau:

if [ condition ]
then
 statement
else
 do this by default
fi

Hãy xem một ví dụ trong đó chúng ta muốn tìm xem số thứ nhất lớn hơn hay nhỏ hơn số thứ hai. Đây, if [ $a -lt $b ] đánh giá là sai, điều này gây ra else một phần của mã để chạy.

#! /bin/sh
a=99
b=45
if [ $a -lt $b ]
then
 echo "a is less than b"
else
 echo "a is greater than b"
fi

Đầu ra:

a is greater than b

Cách sử dụng if..elif..else Tuyên bố

Giả sử bạn muốn thêm các điều kiện và so sánh khác để làm cho mã động. Trong trường hợp này, cú pháp sẽ như sau:

if [ condition ]
then
 statement
elif [ condition ] 
then
 statement 
else
 do this by default
fi

Để tạo ra những so sánh có ý nghĩa, chúng ta có thể sử dụng AND -a và HOẶC -o cũng vậy.

Trong ví dụ này, chúng ta sẽ xác định loại hình tam giác bằng các điều kiện sau:

  • Scalene :Một hình tam giác có chiều dài mỗi cạnh khác nhau.
  • Isosceles :Tam giác có 2 cạnh bằng nhau.
  • Equilateral :Một tam giác có tất cả các cạnh bằng nhau.
read a
read b
read c
if [ $a == $b -a $b == $c -a $a == $c ]
then
echo EQUILATERAL
elif [ $a == $b -o $b == $c -o $a == $c ]
then
echo ISOSCELES
else
echo SCALENE
fi

Trong ví dụ trên, tập lệnh sẽ yêu cầu người dùng nhập ba cạnh của hình tam giác. Tiếp theo, nó sẽ so sánh các cạnh và quyết định loại hình tam giác.

3
4
5
SCALENE

Kết luận

Bạn có thể dễ dàng phân nhánh mã của mình dựa trên các điều kiện như if..else và làm cho mã năng động hơn. Trong hướng dẫn này, bạn đã học cú pháp của if...else cùng với một số ví dụ.

Tôi hy vọng bạn thấy hướng dẫn này hữu ích.

Điều bạn yêu thích nhất mà bạn học được từ hướng dẫn này là gì? Hãy cho tôi biết trên Twitter!

Bạn có thể đọc các bài viết khác của tôi tại đây.

Học cách viết mã miễn phí. Chương trình giảng dạy mã nguồn mở của freeCodeCamp đã giúp hơn 40.000 người có được việc làm với tư cách là nhà phát triển. Bắt đầu