PowerShell~语法与运算符

懵懂的女人 提交于 2020-03-06 23:30:35

基本语法

变量:$开头

$a = "Hello"

条件语句:if else

if ($price -eq 2) 
{
 Write-Host "偶数"
}
else{
 Write-Host "基数" 
}
     

循环语句:for

 for($i=0;$i -lt 3;$i++) {
  Write-Host "`$i=$i"
}

比较运算符

  示例 结果
-eq 等于。包含一个相同的值。 1 -eq 1
"abc” -eq “abc”
1,2,3 -eq 2
1,2,3,1,2,3,1,2,3 –eq 2
"abc”,"def” -eq “abc
true
true
2
2,2,2
abc
-ne 不等于。包含一个不同的值。 1 -ne 1
1,2,3 –ne 1
"abc”,"def” –ne “abc”
false
2,3
def
-gt (>)大于 1 -gt 1 false
-ge (>=)大于或等于 1 -ge 1 true
-lt (<)小于 1 -lt 1 false
-le (<=)小于或等于 1 -le 1 true
-like 使用通配符 (*) 匹配。 “abc” -like “*b*” true
-notlike 使用通配符 (*) 不匹配。 “abc” -notlike “*b*” false
-match 当运算符的输入(左侧参数)是一个单标量对象时,-match 和 -notmatch 运算符填充 $Matches 自动变量。当输入是标量时,-match 和 notmatch 运算符返回布尔值,并将 $Matches 自动变量 的值设置为参数的匹配项目。 如果输入是一个集合,则 -match 和 -notmatch 运算符返回该集合中的匹配成员,但运算符不会填 充 $Matches 变量。 123 -match “^[\d]+$”




"abc” -match “^[\w]+$”




"abc”,123 –match “^[\d]+"$”
true
($matches为123)



true
($matches为abc)


123
($matches为空)
-notmatch 正则表达式比较 123 -notmatch “^[\d]+$” false
-contains 包含运算符。包含一个相同的完整值(而不是值的一部分)。始终返回布尔值。 "abc”,"def” -contains “abc”
"abc”,"def” -contains “ab”
"abc”,"def” -contains “ab*”
true
false
false
-notcontains 包含运算符。不包含一个相同值。始终返回布尔值。 "abc”,"def” -notcontains “abc” false
-replace 替换,支持正则表达式 “abc“ -replace “b”,"-"
"a1b2c3” -replace “\d”,"-"
a-c
a-b-c-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

逻辑运算符

 

  说明 示例 结果
-and 逻辑与。
仅当两条语句都为 TRUE 时才为 TRUE。
$true -and $false
$true -and $true
(1 -eq 1) -and (1 -eq 2)
false
true
false
-or 逻辑或。
当其中一条语句为 TRUE或两条语句都为 TRUE 时为 TRUE。
$true -or $false
(1 -eq 1) -or (1 -eq 2)
true
true
-xor 逻辑异或。
仅当一条语句为 TRUE而另一条语句为 FALSE 时才为 TRUE。
$true -xor $false
$true -xor $true
true
false
-not
!
逻辑非。对后面的语句取反。 -not $true
!$true
false
false
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!