PowerShell 数组(Array)

来源:互联网 发布:windows tasks sched 编辑:程序博客网 时间:2024/04/30 08:29

当一个命令执行返回多个结果的时候,PowerShell 会自动将结果集转换成数组存储,把每一行作为一个元素。以下本人测试了一些基本的数组操作。


PowerShell 当前版本:



创建数组:(创建数组方式有很多种)

#创建整型类型的数组,包含4个元素$id = 2,0,1,2$id = (2,0,1,2)#创建字符类型的数组,包含4个元素$id=@("A","B","C","D")#创建一个元素的数组(无逗号则为变量)$id=,"A"#无元素的数组$id=@() #创建强类型数组[int[]] $id=@()#创建连续编号的数组$id=1..10#将操作结果存储为数组$id = ipconfig

数组查询:

#创建数组del variable:id$id = 2,0,1,2#选择第3个元素的值$id[2]#选择第1个和第3个元素$id[0,2]#选择第1个至第3个元素$id[0..2]#统计数组中的元素个数$id.count#选择数组中的最后一个元素$id[$my.count-1]$id[-1]#反序输出数组元素$id[$id.count..0]


添加删除数组元素:

#添加值为5和9的元素到数组中$id+='5'$id=$id+'9'#删除数组中的部分元素,如删除第3个元素(实为重新赋值)$id=$id[0..1]+$id[3..$id.count]



将字符变量转成数组显示:

$str="abcd"$str.Tochararray()


查看变量是否为数组类型:

$id -is [Array]


查看数组及元素的类型:

#获取数组类型$id.gettype()#强类型的数组[int[]] $id=@()$id.gettype()#获取数组元素类型$id[0].gettype()


复制数组:

del variable:iddel variable:my$id = 2,0,1,2$my=$iddel variable:iddel variable:my$id=@("A","B","C","D")$my=$id.clone()




哈希表!

哈希表并非数组,这里放到数组的章节中,因为用法与数组有些类似。哈希表以键值对("key-value pairs")存储,在哈希表中,可以不用像数组那样的编号定位其值了,而是用键名称查找到相应的值。创建哈希表用 @{}替代数组的 @()


创建哈希表:

#使用@{}创建哈希表$stu=@{ name="kk"; age=12; sex="M"}#查看类型$stu -is [Array]$stu.gettype()


查看哈希表键值:

#查看键值$stu.age$stu.name$stu["name"]$stu["name","age"]#返回所有键(无值)$stu.keys#返回所有值(无键)$stu[$stu.keys] 



哈希表中存储数组:

$stu=@{ name="kk"; age=12; sex="M"; books="book1","book2","book3"}$stu.books


哈希表中更改、添加、删除 键值对:

$stu.age=18$stu.books = "book1", "book2", "book3" ,"book4"$stu.addr="shenzhen"$stu.remove("sex")$stu



参考: PowerShell 在线教程   Chapter 4. Arrays and Hashtables



0 0
原创粉丝点击