[玩转系统] 关于使用
作者:精品下载站 日期:2024-12-14 02:17:29 浏览:12 分类:玩电脑
关于使用
简短描述
允许您指定要在会话中使用的名称空间。
详细描述
using
语句允许您指定要在会话中使用的命名空间。添加命名空间可简化 .NET 类和成员的使用,并允许您从脚本模块和程序集中导入类。
using
语句必须位于脚本或模块中的任何其他语句之前。其前面不能有未注释的语句,包括参数。
using
语句不得包含任何变量。
using
语句与变量的 using:
范围修饰符不同。有关详细信息,请参阅 about_Remote_Variables。
命名空间语法
要解析 .NET 命名空间中的类型:
using namespace <.NET-namespace>
指定命名空间可以更轻松地通过短名称引用类型。
示例 - 添加名称空间以进行类型名称解析
以下脚本获取“Hello World”字符串的加密哈希。
请注意 using namespace System.Text
和 using namespace System.IO
如何简化对 System.Text[UnicodeEncoding]
的引用System.IO
中的 /code> 和 [Stream]
和 [MemoryStream]
。
using namespace System.Text
using namespace System.IO
[string]$string = "Hello World"
## Valid values are "SHA1", "SHA256", "SHA384", "SHA512", "MD5"
[string]$algorithm = "SHA256"
[byte[]]$stringBytes = [UnicodeEncoding]::Unicode.GetBytes($string)
[Stream]$memoryStream = [MemoryStream]::new($stringBytes)
$getFileHashSplat = @{
InputStream = $memoryStream
Algorithm = $algorithm
}
$hashFromStream = Get-FileHash @getFileHashSplat
$hashFromStream.Hash.ToString()
模块语法
要从 PowerShell 模块加载类和枚举:
using module <module-name>
<module-name>
的值可以是模块名称、完整模块规范或模块文件的路径。
当 <module-name>
是路径时,该路径可以是完全限定的或相对的。相对路径相对于具有 using
语句的脚本进行解析。
当 <module-name>
是名称或模块规范时,PowerShell 会在 PSModulePath 中搜索指定的模块。
模块规范是一个具有以下键的哈希表。
ModuleName
- 必需 指定模块名称。GUID
- 可选 指定模块的 GUID。还必需至少指定以下三个键之一。
ModuleVersion
- 指定模块的最低可接受版本。
MaximumVersion
- 指定模块可接受的最大版本。RequiredVersion
- 指定模块的准确、必需的版本。它不能与其他版本密钥一起使用。
Import-Module
和 #requires
语句仅导入模块定义的模块函数、别名和变量。不导入类和枚举。
using module
语句从脚本模块或二进制模块的根模块 (ModuleToProcess
) 导入类和枚举。它不会一致地导入嵌套模块或点源到根模块的脚本中定义的类或枚举。直接在根模块中定义您希望模块外部的用户可以使用的类和枚举。
在开发脚本模块期间,通常会对代码进行更改,然后使用 Import-Module
和 Force 参数加载新版本的模块。这仅适用于根模块中函数的更改。 Import-Module
不会重新加载任何嵌套模块。此外,无法加载任何更新的类或枚举。
为了确保您运行的是最新版本,您必须启动一个新会话。无法卸载在 PowerShell 中定义并使用 using
语句导入的类和枚举。
示例 - 从脚本模块加载类
在此示例中,名为 CardGames 的 PowerShell 脚本模块定义了以下类:
- 甲板
- 卡片
Import-Module
和 #requires
语句仅导入模块定义的模块函数、别名和变量。不导入类。 using module
命令导入模块并加载类定义。
using module CardGames
[Deck]$deck = [Deck]::new()
$deck.Shuffle()
[Card[]]$hand1 = $deck.Deal(5)
[Card[]]$hand2 = $deck.Deal(5)
[Card[]]$hand3 = $deck.Deal(5)
汇编语法
以下语法在执行开始时将 .NET 类型从程序集加载到脚本中。您必须使用程序集文件的完全限定路径。
using assembly <.NET-assembly-path>
using assembly
语句与使用 Add-Type
cmdlet 类似。但是,Add-Type
cmdlet 在执行Add-Type
时添加类型,而不是在开始执行脚本时添加类型。有关详细信息,请参阅添加类型。
示例 - 从程序集中加载类型
此示例加载一个程序集,以便在处理数据时可以使用它的类。以下脚本将数据转换为 YAML 格式。
using assembly './YamlDotNet.dll'
using namespace YamlDotNet
$yamlSerializer = [Serialization.Serializer]::new()
$info = [ordered]@{
Inventory = @(
@{ Name = 'Apples' ; Count = 1234 }
@{ Name = 'Bagels' ; Count = 5678 }
)
CheckedAt = [datetime]'2023-01-01T01:01:01'
}
$yamlSerializer.Serialize($info)
Inventory:
- Name: Apples
Count: 1234
- Name: Bagels
Count: 5678
CheckedAt: 2023-01-01T01:01:01.0000000
- 上一篇:[玩转系统] 关于变量
- 下一篇:[玩转系统] 关于更新通知
猜你还喜欢
- 03-30 [玩转系统] 如何用批处理实现关机,注销,重启和锁定计算机
- 02-14 [系统故障] Win10下报错:该文件没有与之关联的应用来执行该操作
- 01-07 [系统问题] Win10--解决锁屏后会断网的问题
- 01-02 [系统技巧] Windows系统如何关闭防火墙保姆式教程,超详细
- 12-15 [玩转系统] 如何在 Windows 10 和 11 上允许多个 RDP 会话
- 12-15 [玩转系统] 查找 Exchange/Microsoft 365 中不活动(未使用)的通讯组列表
- 12-15 [玩转系统] 如何在 Windows 上安装远程服务器管理工具 (RSAT)
- 12-15 [玩转系统] 如何在 Windows 上重置组策略设置
- 12-15 [玩转系统] 如何获取计算机上的本地管理员列表?
- 12-15 [玩转系统] 在 Visual Studio Code 中连接到 MS SQL Server 数据库
- 12-15 [玩转系统] 如何降级 Windows Server 版本或许可证
- 12-15 [玩转系统] 如何允许非管理员用户在 Windows 中启动/停止服务
取消回复欢迎 你 发表评论:
- 精品推荐!
-
- 最新文章
- 热门文章
- 热评文章
[影视] 黑道中人 Alto Knights(2025)剧情 犯罪 历史 电影
[古装剧] [七侠五义][全75集][WEB-MP4/76G][国语无字][1080P][焦恩俊经典]
[实用软件] 虚拟手机号 电话 验证码 注册
[电视剧] 安眠书店/你 第五季 You Season 5 (2025) 【全10集】
[电视剧] 棋士(2025) 4K 1080P【全22集】悬疑 犯罪 王宝强 陈明昊
[软件合集] 25年6月5日 精选软件22个
[软件合集] 25年6月4日 精选软件36个
[短剧] 2025年06月04日 精选+付费短剧推荐33部
[短剧] 2025年06月03日 精选+付费短剧推荐25部
[软件合集] 25年6月3日 精选软件44个
[剧集] [央视][笑傲江湖][2001][DVD-RMVB][高清][40集全]李亚鹏、许晴、苗乙乙
[电视剧] 欢乐颂.5部全 (2016-2024)
[电视剧] [突围] [45集全] [WEB-MP4/每集1.5GB] [国语/内嵌中文字幕] [4K-2160P] [无水印]
[影视] 【稀有资源】香港老片 艺坛照妖镜之96应召名册 (1996)
[剧集] 神经风云(2023)(完结).4K
[剧集] [BT] [TVB] [黑夜彩虹(2003)] [全21集] [粤语中字] [TV-RMVB]
[实用软件] 虚拟手机号 电话 验证码 注册
[资源] B站充电视频合集,包含多位重量级up主,全是大佬真金白银买来的~【99GB】
[影视] 内地绝版高清录像带 [mpg]
[书籍] 古今奇书禁书三教九流资料大合集 猎奇必备珍藏资源PDF版 1.14G
[电视剧] [突围] [45集全] [WEB-MP4/每集1.5GB] [国语/内嵌中文字幕] [4K-2160P] [无水印]
[剧集] [央视][笑傲江湖][2001][DVD-RMVB][高清][40集全]李亚鹏、许晴、苗乙乙
[电影] 美国队长4 4K原盘REMUX 杜比视界 内封简繁英双语字幕 49G
[电影] 死神来了(1-6)大合集!
[软件合集] 25年05月13日 精选软件16个
[精品软件] 25年05月15日 精选软件18个
[绝版资源] 南与北 第1-2季 合集 North and South (1985) /美国/豆瓣: 8.8[1080P][中文字幕]
[软件] 25年05月14日 精选软件57个
[短剧] 2025年05月14日 精选+付费短剧推荐39部
[短剧] 2025年05月15日 精选+付费短剧推荐36部
- 最新评论
-
- 热门tag