网站开发承包合同,百度投诉电话人工服务总部,微信商城公众号,公司网络营销方案思路当显示多条结果时#xff0c;存储在变量中非常智能#xff0c;变量类型会自动转换为一个数组。 在下面的例子中#xff0c;使用GetType()可以看到$a变量已经不是我们常见的string或int类型#xff0c;而是Object类型#xff0c;使用-is操作符来判断是否是个数组#xff0…当显示多条结果时存储在变量中非常智能变量类型会自动转换为一个数组。 在下面的例子中使用GetType()可以看到$a变量已经不是我们常见的string或int类型而是Object类型使用-is操作符来判断是否是个数组返回True则是数组返回False则不是。 如果要统计数组的行数用我们前面学到的一个方法count即可。例如要看一下$a变量值的行数 数组都有一个下标索引用于访问其中的值从0开始。例如我要访问$a第六行结果在Powershell Console中输入$a[5]打印出结果。 创建数组变量 数组变量是一种特殊而且十分有用的变量是有N个普通的变量组成。一个数组包含多个值得变量没有尺寸限制。在Powershell中创建数组变量非常简单。 在这个事例中分别定义了$array和$array1两个数组变量存放1到4连续的4个阿拉伯数字每个元素中间用逗号隔开。其中(..)标识连续的意思。 在一个数组中除了可以存放相同数据类型元素之外也可以存放不同的数据类型。 在这个例子中数组变量$ab存放了字符串类型数字类型以及datetime类型三种元素: 在以上的数组变量中都赋予了初始值在里面有些情况下数组值是空的如何创建一个空元素的数组变量呢 $array () #定义无初始值的数组变量 打印数组元素值 数组变量定义好之后数据存放于数组之中在指令执行过程中有使用到该数组元素值时如果将指取出来。在前面也演示过一个例子$a[1], 数组变量【元素地址】其中地址是从0开始如果从数组中取出多个值就需要指定多个地址。 在这条指令中结果打印变量$a第2行21行31行数据。 添加删除元素 #元素New Vlaue $array 1,2,3,4 $array New Vlaue $array 在上面的例子中向数组中添加元素非常容易做到但是从数组中移除元素却不那么容易为了能对数组很好的操作我们可以使用.Net Framwork ArrayList类 System.Collections.ArrayList 看下面的例子是不是使用.net对象更好操作呢 #创建.net数组对象 $array New-Object system.Collections.ArrayList #在数组$array中添加元素1,2,3,4 $array.add(1) $array.add(2) $array.add(3) $array.Add(4) #打印数组变量$array结果 $array #移除元素4 $array.Remove(4) $array 强制类型数组 例如要定义一个整型数组变量当添加非整型值时将提示错误或自动转换成整型。 [int[]]$array 1,2,3 $array 4 $array 10.56 $array Hello 当为此数组添加字符串则出现报错。 Hash表 哈希表也就是字典是一种非常优秀的数据结构允许我们使用关键字进行查询它几乎没有性能损失这些都是因为它的基本结构能够很好的符合计算机存储运算特性。 创建一个新的Hash表 $hashlist {Name PC1; IP 1.1.1.1; User Sam.lu} 打印数据可以通过关键字 $hashlist[IP] $hashlist[Name,IP] 当然我们也可以采用另外的方式不使用[] $hashlist.IP 在有些情景中需要把数组的数据存放在Hash表中如何实现呢来看一个简单的例子 $array1 1,2,3,4,5 $array2 beijing,shanghai,tianjin,hangzhou $hashlist {int $array1;string $array2} $hashlist.int $hashlist.string 在现有的Hash表中插入关键字 在上面的例子中 $hashlist {Name PC1; IP 1.1.1.1; User Sam.lu} 里面有三个关键字NameIPUser能不能在现有Hash表中再添入关键字例如加一个位置添加的方法有两种 1. $hashlist.Date Get-Date 2. $hashlist[Location] Hangzhou $hashlist 修改和删除Hash表中的值 在Hash表中直接可以使用关键字进行赋值后面修改的值会覆盖已存在的值通过上面的学习我们可以了解到使用关键字可以采用两种方式一种是使用【】一种则使用.关键字,两种方法都能对关键字的值进行操作。 $hashlist[Date] (Get-Date).AddDays(-1) $hashlist.Location New York 删除关键字则使用remove方法即可。 $hashlist.remove(“date”) Hash表还有另外一个大用途可以定义结果的输出格式。使用Hash表定义输出格式有四个关键字 Expression 指定要输出对象的属性值 Witdth 字符串列的宽度 Lable 列标题 Alignment 列中位置是左还是右 #定义输出结果第一列的格式对象属性是Name宽度30列标题Filename左对齐 $colume1 {expression Name;widt 30; lable Filename;alignment left} #定义输出结果第二列的格式对象属性是LastWriteTime宽度40列标题Last Modification右对齐 $colume2 {expression LastWriteTime;widt 40; label Last Modification;alignment right} #使用dir指令列出本目录下所有的文件及目录按照定义的输出格式第一列输出Name第二列输出LastWriteTime dir |Format-Table $colume1,$colume2 转载于:https://www.cnblogs.com/motools/p/3311262.html