整數比較運算符和字符串比較語句

整數比較運算符僅是對數字的操做,不能將數字與字符串、文件等內容一塊兒操做,並且不能想固然地使用平常生活中的等號、大於號、小於號等來判斷。由於等號與賦值命令符衝突,大於號和小於號分別與輸出重定向命令符和輸入重定向命令符衝突。所以必定要使用規範的整數比較運算符來進行操做。可用的整數比較運算符如表4-4所示。linux

表4-4                                                  可用的整數比較運算符測試

操做符 做用
-eq 是否等於
-ne 是否不等於
-gt 是否大於
-lt 是否小於
-le 是否等於或小於
-ge 是否大於或等於

 

接下來小試牛刀。咱們先測試一下10是否大於10以及10是否等於10(經過輸出的返回值內容來判斷):spa

[root@linuxprobe ~]# [ 10 -gt 10 ]
[root@linuxprobe ~]# echo $?
1
[root@linuxprobe ~]# [ 10 -eq 10 ]
[root@linuxprobe ~]# echo $?
0


字符串比較語句用於判斷測試字符串是否爲空值,或兩個字符串是否相同。它常常用來判斷某個變量是否未被定義(即內容爲空值),理解起來也比較簡單。字符串比較中常見的運算符如表4-5所示。code

表4-5                                                常見的字符串比較運算符字符串

操做符 做用
= 比較字符串內容是否相同
!= 比較字符串內容是否不一樣
-z 判斷字符串內容是否爲空

 

接下來經過判斷String變量是否爲空值,進而判斷是否認義了這個變量:table

[root@linuxprobe ~]# [ -z $String ]
[root@linuxprobe ~]# echo $?
0
相關文章
相關標籤/搜索