[玩转系统] 关于参数
作者:精品下载站 日期:2024-12-14 02:21:04 浏览:13 分类:玩电脑
关于参数
简短描述
描述如何在 PowerShell 中使用命令参数。
详细描述
大多数 PowerShell 命令(例如 cmdlet、函数和脚本)都依赖参数来允许用户选择选项或提供输入。参数跟随命令名称并具有以下形式:
-<parameter_name> <parameter_value>
-<parameter_name>:<parameter_value>
参数名称前面有一个连字符 (-
),它向 PowerShell 发出信号,表明连字符后面的单词是参数名称。参数名称和值可以用空格或冒号字符分隔。某些参数不需要或接受参数值。其他参数需要一个值,但不需要命令中的参数名称。
参数的类型和这些参数的要求各不相同。要查找有关命令参数的信息,请使用 Get-Help
cmdlet。例如,要查找有关 Get-ChildItem
cmdlet 参数的信息,请键入:
Get-Help Get-ChildItem
要查找有关脚本参数的信息,请使用脚本文件的完整路径。例如:
Get-Help $HOME\Documents\Scripts\Get-Function.ps1
Get-Help
cmdlet 返回有关命令的各种详细信息,包括说明、命令语法、有关参数的信息以及显示如何在命令中使用参数的示例。
您还可以使用 Get-Help
cmdlet 的 Parameter 参数来查找有关特定参数的信息。或者,您可以使用带有通配符 ( *
) 值的 Parameter 参数来查找有关命令的所有参数的信息。例如,以下命令获取有关 Get-Member
cmdlet 的所有参数的信息:
Get-Help Get-Member -Parameter *
默认参数值
可选参数有一个默认值,即在命令中未指定该参数时使用或假定的值。
例如,许多 cmdlet 的 ComputerName 参数的默认值是本地计算机的名称。因此,除非指定 ComputerName 参数,否则命令中将使用本地计算机名称。
要查找默认参数值,请参阅 cmdlet 的帮助主题。参数说明应包含默认值。
您还可以为 cmdlet 或高级函数的任何参数设置自定义默认值。有关设置自定义默认值的信息,请参阅 about_Parameters_Default_Values。
参数属性表
当您使用 Get-Help
cmdlet 的 Full、Parameter 或 Online 参数时,Get -Help
显示参数属性表,其中包含有关参数的详细信息。
此信息包括使用该参数所需了解的详细信息。例如,Get-ChildItem
cmdlet 的帮助主题包含有关其 Path 参数的以下详细信息:
-Path <string[]>
Specifies a path of one or more locations. Wildcard characters are
permitted. The default location is the current directory (.).
Required? false
Position? 0
Default value Current directory
Accept pipeline input? true (ByValue, ByPropertyName)
Accept wildcard characters? true
参数信息包括参数语法、参数描述和参数属性。以下部分描述了参数属性。
所需参数
此设置指示该参数是否是强制的,即使用此 cmdlet 的所有命令是否都必须包含此参数。当值为 True 并且命令中缺少参数时,PowerShell 会提示您输入参数值。
参数位置
如果 Position
设置为非负整数,则不需要参数名称。这种类型的参数称为位置参数,数字表示该参数相对于其他位置参数必须出现的位置。命名参数可以列在 cmdlet 名称之后的任何位置。如果包含位置参数的参数名称,则该参数可以列在 cmdlet 名称之后的任何位置。
例如,Get-ChildItem
cmdlet 具有 Path 和 Exclude 参数。 Path 的 Position
设置为 0,这意味着它是一个位置参数。 排除的位置
设置是命名。
这意味着Path不需要参数名称,但其参数值必须是命令中的第一个或唯一一个未命名的参数值。但是,由于 Exclude 参数是命名参数,因此您可以将其放置在命令中的任何位置。
由于这两个参数的 Position
设置,您可以使用以下任意命令:
Get-ChildItem -Path c:\techdocs -Exclude *.ppt
Get-ChildItem c:\techdocs -Exclude *.ppt
Get-ChildItem -Exclude *.ppt -Path c:\techdocs
Get-ChildItem -Exclude *.ppt c:\techdocs
如果您要包含另一个位置参数而不包含参数名称,则该参数必须按照 Position
设置指定的顺序放置。
参数类型
此设置指定参数值的 Microsoft .NET Framework 类型。例如,如果类型为Int32,则参数值必须为整数。如果类型是string,则参数值必须是字符串。如果字符串包含空格,则该值必须用引号括起来,或者空格前面必须带有转义字符 (`
)。
默认值
此设置指定在未提供其他值的情况下参数将采用的值。例如,Path 参数的默认值通常是当前目录。必需的参数永远不会有默认值。对于许多可选参数来说,没有默认值,因为如果不使用该参数则没有任何作用。
接受多个值
此设置指示参数是否接受多个参数值。当参数接受多个值时,您可以在命令中键入逗号分隔的列表作为参数的值,或者将逗号分隔的列表(数组)保存在变量中,然后指定该变量作为参数值。
例如,Get-Service
cmdlet 的Name 参数接受多个值。以下命令均有效:
Get-Service -Name winrm, netlogon
$s = "winrm", "netlogon"
Get-Service -Name $s
接受管道输入
此设置指示是否可以使用管道运算符 (|
) 向参数发送值。
Value Description
----- -----------
False Indicates that you cannot pipe a value to the
parameter.
True (by Value) Indicates that you can pipe any value to the
parameter, just so the value has the .NET
Framework type specified for the parameter or the
value can be converted to the specified .NET
Framework type.
当参数为“True(按值)”时,PowerShell 会尝试将任何管道值与该参数关联,然后再尝试其他方法来解释该命令。
True (by Property Name) Indicates that you can pipe a value to the
parameter, but the .NET Framework type of the
parameter must include a property with the same
name as the parameter.
例如,仅当值具有名为 Name 的属性时,您才可以通过管道将值传递给 Name 参数。
笔记
接受管道输入(按值
)或(按 PropertyName
)的类型化参数允许在参数上使用延迟绑定脚本块。
delay-bind 脚本块在ParameterBinding 期间自动运行。结果绑定到参数。延迟绑定对于定义为 ScriptBlock
或 System.Object
类型的参数不起作用,脚本块通过无传递> 被调用。
您可以在这里阅读有关延迟绑定脚本块的信息 about_Script_Blocks.md
接受通配符
此设置指示参数值是否可以包含通配符,以便参数值可以与目标容器中的多个现有项相匹配。
常用参数
通用参数是可以与任何 cmdlet 一起使用的参数。有关公共参数的更多信息,请参见about_CommonParameters。
参见
- about_Command_syntax
- about_Comment_Based_Help
- about_功能_高级
- about_Parameters_Default_Values
- about_管道
- about_通配符
猜你还喜欢
- 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