(5) powershell 语法
一、变量
$a=3 $b=2 $c=$a+$b $c
同时赋值
$a,$b=3,2
查看正在使用的变量
ls variable:
删除变量a
del variable:a
二、数组
返回命令是数组类型,没一行为一个元素
$IPcfg=ipconfig $IPcfg[4] #第5行 #无线局域网适配器 WLAN: $IPcfg.Count # 返回数组元素
创建数组
#创建一个数组 $arr=1,3,'abc',5 $arr #创建连续数组 $arr1=1..5 $arr1
使用索引下标访问数组
$arr1=1..5 $arr1[0]
添加元素
$arr1+=6
三、运算符
1.比较运算符
-eq :等于 -ne :不等于 -gt :大于 -ge :大于等于 -lt :小于 -le :小于等于 -contains :包含 -notcontains :不包含
2.布尔运算
-and :和 -or :或 -xor :异或 -not :逆
3.求反
-not
四、判断
1.if-else
$a=4 if($a -gt 3){ "$a ok1" #单引号与双引号的区别, 双引号可以输出变量的值 }elseif($a -eq 3){ 'ok2' }else{ 'ok3' }
2.switch
$value=3 switch($value) { 1 {"Beijing"} 2 {"Shanghai"} 3 {"Tianjin"} 4 {"Chongqing"} }
3.Where-Object
通过条件判断过滤管道结果
Get-Process | Where-Object {$_.Name -eq "WeChatApp"}
五、循环
1. foreach
$array=7..10 foreach ($n in $array) { $n*$n } '-----------------------------------' foreach($file in dir c:\windows) { if($file.Length -gt 1mb) { $File.Name } }
2.while
$n=5 while($n -gt 0) { $n $n=$n-1 }
3.do -while
先执行,后判断
$n=5 do{ $n $n=$n-1 } while($n -gt 5)
4.for
$sum=0 for($i=1;$i -le 100;$i++) { $sum+=$i } $sum
5.switch
$nums = 10..7 Switch ($nums) { Default { "n= $_" } }
$nums = 10..7 Switch ($nums) { {($_ % 2) -eq 0} {"$_ 偶数"} {($_ % 2) -ne 0} {"$_ 奇数"} }
6.跳出
break,continue
六、函数
1. 创建函数
Function func(){"start"} func
2.传递参数
(1)使用 $args 传递任意数量参数
Function func() { if($args.Count -eq 0) { "No argument!" } else { $args | foreach {"Hello,$($_)"} } } func tom lilei
(2)指定参数
function func($str1,$str2) { return $str1+$str2 } func hello world
(3)默认值
function func($str1="ni",$str2="hao") { return $str1+$str2 } func hello
七、处理错误