[玩转系统] New-Variable (Microsoft.PowerShell.Utility)
作者:精品下载站 日期:2024-12-14 02:04:59 浏览:15 分类:玩电脑
New-Variable (Microsoft.PowerShell.Utility)
New-Variable
模块 :Microsoft.PowerShell.Utility创建一个新变量。
句法
New-Variable
[-Name] <String>
[[-Value] <Object>]
[-Description <String>]
[-Option <ScopedItemOptions>]
[-Visibility <SessionStateEntryVisibility>]
[-Force]
[-PassThru]
[-Scope <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
描述
New-Variable
cmdlet 在 PowerShell 中创建一个新变量。您可以在创建变量时为其赋值,也可以在创建后赋值或更改该值。
您可以使用New-Variable
的参数来设置变量的属性、设置变量的范围以及确定变量是公共的还是私有的。
通常,您可以通过键入变量名称及其值(例如 $Var=3
)来创建新变量,但您可以使用 New-Variable
cmdlet 来使用其参数。
示例
示例 1:创建变量
New-Variable days
此命令创建一个名为 days 的新变量。您无需键入名称参数。
示例 2:创建变量并为其赋值
New-Variable -Name "zipcode" -Value 98033
此命令创建一个名为 zipcode 的变量并为其分配值 98033。
示例 3:使用 ReadOnly 选项创建变量
PS C:\> New-Variable -Name Max -Value 256 -Option ReadOnly
PS C:\> New-Variable -Name max -Value 1024
New-Variable : A variable with name 'max' already exists.
At line:1 char:1
+ New-Variable -Name max -Value 1024
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : ResourceExists: (max:String) [New-Variable], SessionStateException
+ FullyQualifiedErrorId : VariableAlreadyExists,Microsoft.PowerShell.Commands.NewVariableCommand
PS C:\> New-Variable -Name max -Value 1024 -Force
此示例演示如何使用 New-Variable
的 ReadOnly
选项来保护变量不被覆盖。
第一个命令创建一个名为 Max 的新变量,并将其值设置为 256。它使用值为 ReadOnly
的 Option 参数。
第二个命令尝试创建第二个同名变量。此命令返回错误,因为变量上设置了只读选项。
第三个命令使用Force参数来覆盖变量的只读保护。在这种情况下,创建同名新变量的命令会成功。
示例 4:将多个选项分配给一个变量
New-Variable -Name 'TestVariable' -Value 'Test Value' -Option AllScope,Constant
此示例创建一个变量并分配 AllScope
和 Constant
选项,以便该变量在当前作用域和创建的任何新作用域中可用,并且无法更改或删除。
示例 5:创建私有变量
此命令演示了模块中私有变量的行为。该模块包含 Get-Counter
cmdlet,其中有一个名为 Counter 的私有变量。该命令使用值为 Private 的 Visibility 参数来创建变量。
PS C:\> New-Variable -Name counter -Visibility Private
#Effect of private variable in a module.
PS C:\> Get-Variable c*
Name Value
---- -----
Culture en-US
ConsoleFileName
ConfirmPreference High
CommandLineParameters {}
PS C:\> $counter
"Cannot access the variable '$counter' because it is a private variable"
At line:1 char:1
+ $counter
+ ~~~~~~~~
+ CategoryInfo : PermissionDenied: (counter:String) [], SessionStateException
+ FullyQualifiedErrorId : VariableIsPrivate
PS C:\> Get-Counter
Name Value
---- -----
Counter1 3.1415
...
示例输出显示了私有变量的行为。加载模块的用户无法查看或更改Counter变量的值,但可以通过模块中的命令读取和更改Counter变量。
示例 6:创建一个带有空格的变量
此示例演示可以创建带空格的变量。可以使用 Get-Variable cmdlet 或直接用大括号分隔变量来访问变量。
PS C:\> New-Variable -Name 'with space' -Value 'abc123xyz'
PS C:\> Get-Variable -Name 'with space'
Name Value
---- -----
with space abc123xyz
PS C:\> ${with space}
abc123xyz
参数
-Confirm
在运行 cmdlet 之前提示您进行确认。
类型 :SwitchParameter
别名:cf
位置:命名
默认值:False
必需的:False
接受管道输入:False
接受通配符:False
-Description
指定变量的描述。
类型 :String
位置:命名
默认值:None
必需的:False
接受管道输入:False
接受通配符:False
-Force
指示 cmdlet 创建一个与现有只读变量同名的变量。
默认情况下,您可以覆盖变量,除非该变量具有 ReadOnly
或 Constant
选项值。有关详细信息,请参阅选项参数。
SwitchParameter
位置:命名
默认值:None
必需的:False
接受管道输入:False
接受通配符:False
-Name
指定新变量的名称。
类型 :String
位置:0
默认值:None
必需的:True
接受管道输入:True
接受通配符:False
-Option
指定变量的选项属性的值。该参数可接受的值为:
None
- 不设置任何选项。无
是默认值。只读
- 可以删除。无法更改,除非使用Force 参数。Private
- 该变量仅在当前范围内可用。AllScope
- 变量被复制到创建的任何新范围。常量
- 无法删除或更改。Constant
仅在创建变量时才有效。您无法将现有变量的选项更改为常量
。
这些值被定义为基于标志的枚举。您可以使用此参数将多个值组合在一起以设置多个标志。这些值可以作为值数组或这些值的逗号分隔字符串传递给 Option 参数。该 cmdlet 将使用二进制 OR 运算组合这些值。将值作为数组传递是最简单的选项,并且还允许您对值使用制表符补全。
要查看会话中所有变量的选项属性,请键入 Get-Variable |格式表-属性名称,选项-AutoSize。
类型 :范围项选项
接受的值:无、只读、常量、私有、所有范围、未指定
位置:命名
默认值:None
必需的:False
接受管道输入:False
接受通配符:False
-PassThru
返回一个代表您正在使用的项目的对象。默认情况下,此 cmdlet 不生成任何输出。
类型 :SwitchParameter
位置:命名
默认值:None
必需的:False
接受管道输入:False
接受通配符:False
-Scope
指定新变量的范围。该参数可接受的值为:
全局
- 在全局范围内创建的变量可以在 PowerShell 进程中的任何位置访问。Local
- 本地作用域是指当前作用域,这可以是任何作用域,具体取决于上下文。当没有指定scope参数时,Local
是默认范围。脚本
- 在脚本范围内创建的变量只能在创建它们的脚本文件或模块内访问。- 相对于当前作用域的数字(0 到作用域数量,其中 0 是当前作用域,1 是其父作用域,2 是父作用域的父作用域,依此类推)。不能使用负数。
笔记
该参数还接受 Private
值。 Private
实际上不是作用域,而是变量的可选设置。但是,将此 cmdlet 与 Private
值结合使用不会更改变量的可见性。有关详细信息,请参阅 about_Scopes。
String
位置:命名
默认值:None
必需的:False
接受管道输入:False
接受通配符:False
-Value
指定变量的初始值。
类型 :目的
位置:1
默认值:None
必需的:False
接受管道输入:True
接受通配符:False
-Visibility
确定变量在创建它的会话外部是否可见。此参数设计用于在将交付给其他用户的脚本和命令中使用。该参数可接受的值为:
Public
- 变量可见。Public
是默认设置。Private
- 变量不可见。
当变量是私有变量时,它不会出现在变量列表中,例如 Get-Variable
返回的变量列表,也不会出现在 Variable:
驱动器的显示中。读取或更改私有变量值的命令会返回错误。但是,如果命令是在定义变量的会话中编写的,则用户可以运行使用私有变量的命令。
会话状态条目可见性
接受的值:公共、私人
位置:命名
默认值:None
必需的:False
接受管道输入:False
接受通配符:False
-WhatIf
显示 cmdlet 运行时会发生什么情况。该 cmdlet 未运行。
类型 :SwitchParameter
别名:wi
位置:命名
默认值:False
必需的:False
接受管道输入:False
接受通配符:False
输入
对象
您可以通过管道将任何对象传递给New-Variable
。
输出
无
默认情况下,此 cmdlet 不返回任何输出。
PS变量
当您使用 PassThru 参数时,此 cmdlet 将返回表示新变量的 PSVariable 对象。
笔记
PowerShell 包含以下 New-Variable 别名:
所有平台:
nv
猜你还喜欢
- 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