Powershell 中的比較運(yùn)算符
-eq :等于
-ne :不等于
-gt :大于
-ge :大于等于
-lt :小于
-le :小于等于
-contains :包含
-notcontains :不包含
進(jìn)行比較
可以將比較表達(dá)式直接輸入進(jìn)Powershell控制臺(tái),然后回車,會(huì)自動(dòng)比較并把比較結(jié)果返回。
復(fù)制代碼 代碼如下:
PS C:Powershell> (3,4,5 ) -contains 2
False
PS C:Powershell> (3,4,5 ) -contains 5
True
PS C:Powershell> (3,4,5 ) -notcontains 6
True
PS C:Powershell> 2 -eq 10
False
PS C:Powershell> "A" -eq "a"
True
PS C:Powershell> "A" -ieq "a"
True
PS C:Powershell> "A" -ceq "a"
False
PS C:Powershell> 1gb -lt 1gb+1
True
PS C:Powershell> 1gb -lt 1gb-1
False
求反
求反運(yùn)算符為-not 但是像高級(jí)語(yǔ)言一樣”! “ 也支持求反。
復(fù)制代碼 代碼如下:
PS C:Powershell> $a= 2 -eq 3
PS C:Powershell> $a
False
PS C:Powershell> -not $a
True
PS C:Powershell> !($a)
True
布爾運(yùn)算
-and :和
-or :或
-xor :異或
-not :逆
復(fù)制代碼 代碼如下:
PS C:Powershell> $true -and $true
True
PS C:Powershell> $true -and $false
False
PS C:Powershell> $true -or $true
True
PS C:Powershell> $true -or $false
True
PS C:Powershell> $true -xor $false
True
PS C:Powershell> $true -xor $true
False
PS C:Powershell> -not $true
False
比較數(shù)組和集合
過(guò)濾數(shù)組中的元素
復(fù)制代碼 代碼如下:
PS C:Powershell> 1,2,3,4,3,2,1 -eq 3
3
3
PS C:Powershell> 1,2,3,4,3,2,1 -ne 3
1
2
4
2
1
驗(yàn)證一個(gè)數(shù)組是否存在特定元素
復(fù)制代碼 代碼如下:
PS C:Powershell> $help=(man ls)
PS C:Powershell> 1,9,4,5 -contains 9
True
PS C:Powershell> 1,9,4,5 -contains 10
False
PS C:Powershell> 1,9,4,5 -notcontains 10
True
一、值比較
1) -eq: 相等(equal)運(yùn)算符
2) –ne:不相等(not-equal)運(yùn)算符
3) –lt: 小于(less-than)
4) –gt: 大于(greater than)
5) le: 小于等于 (less-than-or-equal)
6) ge: 大于等于(greater-than-or-equal)
值比較運(yùn)算符可以用來(lái)比較兩個(gè)數(shù)字,也可以用來(lái)比較兩個(gè)字符串。
注意:字符串比較時(shí)忽略大小寫(xiě),如果需要大小寫(xiě)敏感比較,可以使用操作符-ceq, -clt, -cle, -cge。大小寫(xiě)敏感比較時(shí),小寫(xiě)字母小于大寫(xiě)字母。
在PowerShell中明確的大小寫(xiě)不敏感比較操作符是在默認(rèn)操作符前加前綴i,即-ieq,-ilt,-ile,-igt,-ige。
二、隱式類型轉(zhuǎn)換
在PowerShell中自動(dòng)轉(zhuǎn)換的通常規(guī)則是對(duì)于兩個(gè)不同類型變量組成的表達(dá)式,自動(dòng)將右側(cè)的變量轉(zhuǎn)換為左側(cè)變量的類型,之后計(jì)算表達(dá)式的值。
三、邏輯和位操作
1) –and與操作符,在操作符兩邊的操作數(shù)均為$true時(shí)返回$true。
2) –or或操作符,在任何一個(gè)操作數(shù)為$true時(shí)返回$true。
3) –xor異或操作符,如果有一個(gè)操作數(shù)是$true,那么表達(dá)式返回$true;如果兩個(gè)操作數(shù)均為$true,則返回$false。
4) –not或者! 取反操作符,只有一個(gè)操作數(shù),作用將其取反。
5) –band和-bor按位操作與(-band)和按位或(-bor)操作符,僅用于整數(shù)。
四、布爾轉(zhuǎn)換
包括位操作符在內(nèi)的多個(gè)操作符返回?cái)?shù)字類型的值,PowerShell可以自動(dòng)將其轉(zhuǎn)換為布爾類型的值,轉(zhuǎn)換規(guī)則是任何非空值將會(huì)被轉(zhuǎn)換為$true。非空的概念可以被延伸到更寬泛的范圍,下的即PowerShell將會(huì)在需要時(shí)隱式轉(zhuǎn)換為布爾值。也可以在任何值前加[bool]來(lái)顯式執(zhí)行強(qiáng)制類型轉(zhuǎn)換,轉(zhuǎn)換規(guī)則如下:
1) 任何非零值將會(huì)被轉(zhuǎn)換為$true
2) 非零長(zhǎng)度的字符串將會(huì)被轉(zhuǎn)換為$true
3) 至少有一項(xiàng)的集合會(huì)返回$true
4) 其他對(duì)象將會(huì)被轉(zhuǎn)換成$true,除非它們?yōu)?null
五、-like和-match字符串操作符為真,可以用其檢測(cè)字符串是否由特定模式組成或其中是否包含所需的字符串形式。
六、集合與條件表達(dá)式
PowerShell允許在條件表達(dá)式的左邊使用集合。Shell解釋引擎將會(huì)把條件表達(dá)式逐個(gè)應(yīng)用到集合的成員上,結(jié)果是包含返回真值的成員新集合。
您可能感興趣的文章:- Windows Powershell IF-ELSEIF-ELSE 語(yǔ)句
- Windows Powershell Where-Object 條件過(guò)濾
- Windows Powershell Switch 語(yǔ)句