探索PowerShell (八) 数组、哈希表(附:复制粘贴技巧)

所属分类: 脚本专栏 / PowerShell 阅读数: 791
收藏 0 赞 0 分享

我们经常在程序设计中用到的数组,同样在脚本中很常用。本节就详细介绍一下数组,以及哈希表在PowerShell中的使用。

数组

在PowerShell中,声明一个变量为数组时,需要使用符号"@",例如:

$strUsers=@(""user1","user2","user3) <enter> 

这样,我们就声明了一个具有3个成员的数组。查看它的值,使用:

$strUsers <enter> 

还有一些其他的操作,如统计一个数组的成员数目:

$strUsers.Count <enter> 

查看或者为数组成员单独赋值(需要注意的是,PowerShell与大多数程序语言一样,数组成员下标从0开始计数):

$strUsers[0] <enter>

$strUsers[1]="marui" <enter>

也可以使用加号合并数组,如:

哈希表

哈希表,也就是字典,是一种非常优秀的数据结构,允许我们使用关键字进行查询,它几乎没有性能损失,这些都是因为它的基本结构能够很好的符合计算机存储运算特性。

在声明哈希表变量时,同样需要用到符号"@",如:

$age=@{} <enter> "MaRui"=21;"Lee"=27;"Tom"=53

与数组相似的也有如下操作:

复制代码 代码如下:

查询
$age["MaRui"] <enter>

增加(注意,增加的同时一定要赋值,否则不会添加新条目)
$age["Ma"]=24 <enter>

修改
$age["Ma"]=25 <enter>

删除(注意,使用圆括号)
$age.remove("Ma") <enter>

清除哈希表
$age.clear() <enter>


这节的内容很简单,就讲到这里。感谢各位花时间来浏览我的博客!


下去之后,有人问及我在PowerShell中如何进行复制粘贴,其实方法很简单,使用鼠标右键就可以了。

复制

我使用一个cmdlet来查看BIOS信息,并且复制它:

get-wmiobject -class Win32_BIOS <enter> 

Step 1:

使用鼠标左键直接选取要复制的内容

Step 2:

在被选取区域单击鼠标右键即被复制。

现在粘贴到这里:

SMBIOSBIOSVersion : 7UET82WW (3.12 )
Manufacturer      : LENOVO
Name              : Ver 1.00PARTTBL(
SerialNumber      : R8RNGG3
Version           : LENOVO - 3120

粘贴

Step 1:

复制内容,请各位试试复制下面的脚本内容(此脚本用来查看BIOS的详细信息):

复制代码 代码如下:

$info = get-wmiobject -class Win32_BIOS -namespace root\CIMV2 -comp .
foreach ($objItem in $info) {
write-host “BIOS Characteristics: ” $objItem.BiosCharacteristics
write-host “BIOS Version: ” $objItem.BIOSVersion
write-host “Build Number: ” $objItem.BuildNumber
write-host “Caption: ” $objItem.Caption
write-host “Code Set: ” $objItem.CodeSet
write-host “Current Language: ” $objItem.CurrentLanguage
write-host “Description: ” $objItem.Description
write-host “Identification Code: ” $objItem.IdentificationCode
write-host “Installable Languages: ” $objItem.InstallableLanguages
write-host “Installation Date: ” $objItem.InstallDate
write-host “Language Edition: ” $objItem.LanguageEdition
write-host “List Of Languages: ” $objItem.ListOfLanguages
write-host “Manufacturer: ” $objItem.Manufacturer
write-host “Name: ” $objItem.Name
write-host “Other Target Operating System: ” $objItem.OtherTargetOS
write-host “Primary BIOS: ” $objItem.PrimaryBIOS
write-host “Release Date: ” $objItem.ReleaseDate
write-host “Serial Number: ” $objItem.SerialNumber
write-host “SMBIOS BIOS Version: ” $objItem.SMBIOSBIOSVersion
write-host “SMBIOS Major Version: ” $objItem.SMBIOSMajorVersion
write-host “SMBIOS Minor Version: ” $objItem.SMBIOSMinorVersion
write-host “SMBIOS Present: ” $objItem.SMBIOSPresent
write-host “Software Element ID: ” $objItem.SoftwareElementID
write-host “Software Element State: ” $objItem.SoftwareElementState
write-host “Status: ” $objItem.Status
write-host “Target Operating System: ” $objItem.TargetOperatingSystem
write-host “Version: ” $objItem.Version
write-host
}

Step 2:

在PowerShell中单击鼠标右键即可。

看看结果:

再enter一下就执行了,各位自己看结果吧。

更多精彩内容其他人还在看

PowerShell隐藏不显示窗口的多种方法

这篇文章主要介绍了PowerShell隐藏不显示窗口的多种方法,本文讲解了启动PowerShell时隐藏自己的窗口、在PowerShell启动其它进程时隐藏窗口、使用PowerShell隐藏其它进程的窗口三种方法,需要的朋友可以参考下
收藏 0 赞 0 分享

PowerShell启用winrm失败:拒绝访问 0x80070005 -2147024891

这篇文章主要介绍了PowerShell启用winrm失败:拒绝访问 0x80070005 -2147024891,本文给出了详细的排查步骤和解决方法,需要的朋友可以参考下
收藏 0 赞 0 分享

Powershell目录文件夹管理权限的继承和指定方法

这篇文章主要介绍了Powershell目录文件夹管理权限的继承和指定方法,本文给出了创建文件夹、获取当前权限、添加新的权限、添加管理员权限等,需要的朋友可以参考下
收藏 0 赞 0 分享

PowerShell查看本机文件关联程序和默认打开程序的方法

这篇文章主要介绍了PowerShell查看本机文件关联程序和默认打开程序的方法,本文给出了查看方法,同时给出了一份读取结果,需要的朋友可以参考下
收藏 0 赞 0 分享

PowerShell脚本反引号用法实例:随时随地给代码换行

这篇文章主要介绍了PowerShell脚本反引号用法实例:随时随地给代码换行,在遇到一些超长代码行时非常有用,一般编程代码一行的字符数不超过80个哦,需要的朋友可以参考下
收藏 0 赞 0 分享

PowerShell 数组的多种录入方法

这篇文章主要介绍了PowerShell 数组的多种录入方法,需要的朋友可以参考下
收藏 0 赞 0 分享

PowerShell String对象方法小结

这篇文章主要介绍了PowerShell String对象方法,需要的朋友可以参考下
收藏 0 赞 0 分享

使用PowerShell获取当前主机内存使用量和总量的方法

这篇文章主要介绍了使用PowerShell获取当前主机内存使用量和总量的方法,需要的朋友可以参考下
收藏 0 赞 0 分享

PowerShell批量修改AD用户密码属性的代码

这篇文章主要介绍了PowerShell批量修改AD用户密码属性的代码,需要的朋友可以参考下
收藏 0 赞 0 分享

PowerShell 自动备份oracle并上传到ftp

我这里有这样一个需求:有一个数据库,每天使用SQL Server Agent自动生成备份文件。然后,这个数据库非常重要,需要把每天的备份上传一个远程的FTP服务器上去。下面我们来看看如何使用Powershell来实现吧
收藏 0 赞 0 分享
查看更多