下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

3.1 PowerShell中的骨架 Provider

看到Provider这个单词,相信很多管理员都会将它翻译成中文:提供者。将Provider 翻译成“提供者”非常符合它的定位,因为在PowerShell中存在着各种各样的对象,当然这些对象都是相应的生成对象的提供者。在PowerShell中需要访问文件、注册表和环境对象,而这些对象对于Power-Shell 来说属于不同的类别,这些不同的类别由不同的Provider 提供。如何来理解这个概念呢?当需要创建一个目录或者创建一个文件时,我们所针对的就是文件系统的Provider。针对这些文件的任何操作,如创建、修改、删除,都是基于文件系统Provider 提供的对象定义及针对对象所定义的属性和方法。在PowerShell 中Provider是一个非常重要的概念,虽然默认情况下很少针对Provider直接操作,但是在很多时候需要基于PowerShell的Provider 创建相关的对象,PowerShell Provider就像骨架,撑起整个PowerShell的运行环境和对象。图3.1所示为非常形象的骨架模型。

图3.1 非常形象的骨架模型

在PowerShell Provider中有个非常重要的概念PSDriver,PSDriver是Provider 加载之后可以建立到PowerShell Provider 环境的快捷方式。在建立PSDriver时我们需要抛弃已有的系统磁盘的概念,可以实现如图3.2所示多字符的盘符设定。

图3.2 PowerShell中的PSDriver 无字符数量限制

注:建立的PSDriver只能在PowerShell中使用,如果脱离了PowerShell执行环境,其他的Shell都无法使用PowerShell的PSDriver,在PowerShell中创建的磁盘快捷路径不会出现在PowerShell之外的环境。

在新装的计算机中打开PowerShell,默认有8个可用的Provider。

· 别名:系统中的别名对象。

· 证书:在证书存储中存储的证书对象,包含用户和计算机证书。

· 环境:计算机的环境变量。

· 文件系统:计算机最为常用的对象,在多数情况下都是在文件系统中进行文件的创建、删除、修改等操作。

· 功能函数:构建在PowerShell环境中的PowerShell 可调用的功能函数。

· 注册表:PowerShell的注册表可操作对象。

· 变量:在PowerShell中的变量和相关的参数获取。

· WSMan:PowerShell 应用的Web Service 管理对象。

Provider根据需要可以安装相关的模块。模块的安装将扩展当前的Provider,但需要注意的是模块不一定会有Provider,而Provider一定是在系统中加载了模块或管理单元。PowerShell Provider根据相应的模块或管理单元的加载而自动加载。 KUfx24TpUK26D2JAQIi11aMoz96finoK9LiZwaPwY5fTGp0hLJu5tO6lR0IyswUj

点击中间区域
呼出菜单
上一章
目录
下一章
×