Ví dụ toán tử logic trong Shell



Sau đây là một ví dụ sử dụng tất cả các toán tử logic:

#!/bin/sha=10
b=20if [ $a != $b ]
then
   echo "$a != $b : a is not equal to b"
else
   echo "$a != $b: a is equal to b"
fiif [ $a -lt 100 -a $b -gt 15 ]
then
   echo "$a -lt 100 -a $b -gt 15 : returns true"
else
   echo "$a -lt 100 -a $b -gt 15 : returns false"
fiif [ $a -lt 100 -o $b -gt 100 ]
then
   echo "$a -lt 100 -o $b -gt 100 : returns true"
else
   echo "$a -lt 100 -o $b -gt 100 : returns false"
fiif [ $a -lt 5 -o $b -gt 100 ]
then
   echo "$a -lt 100 -o $b -gt 100 : returns true"
else
   echo "$a -lt 100 -o $b -gt 100 : returns false"
fi

Nó sẽ cho kết quả sau:

10 != 20 : a is not equal to b
10 -lt 100 -a 20 -gt 15 : returns true
10 -lt 100 -o 20 -gt 100 : returns true
10 -lt 5 -o 20 -gt 100 : returns false

Có một số điểm cần ghi nhớ:

  • Phải có các khoảng trống giữa các toán tử và các biểu thức, ví dụ: 2+2 là không đúng, nó nên được viết là 2 + 2.

  • Lệnh if…then…else…fi là một lệnh điều khiển luồng mà đã được giải thích trong chương tới.

Các bài học UNIX phổ biến khác tại VietJack:


cac_toan_tu_shell_co_ban_trong_unix_linux.jsp