加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

get-parameter.ps1

发布时间:2020-12-16 22:45:10 所属栏目:大数据 来源:网络整理
导读:http://halr9000.com/article/507 param ( $Cmdlet,[switch]$ShowCommon,[switch]$Full)$command = Get-Command $Cmdlet -ea silentlycontinue # resolve aliases (an alias can point to another alias)while ($command.CommandType -eq "Alias") {$command
http://halr9000.com/article/507
 
param ( 
  $Cmdlet,[switch]$ShowCommon,[switch]$Full
)

$command = Get-Command $Cmdlet -ea silentlycontinue 

# resolve aliases (an alias can point to another alias)
while ($command.CommandType -eq "Alias") {
	$command = Get-Command ($command.definition)
}
if (-not $command) { return }

foreach ($paramset in $command.ParameterSets){
	$Output = @()
	foreach ($param in $paramset.Parameters) {
		if ( ! $ShowCommon ) {
			if ($param.aliases -match "vb|db|ea|wa|ev|wv|ov|ob|wi|cf") { continue }
		}
		$process = "" | Select-Object Name,Type,ParameterSet,Aliases,Position,IsMandatory,Pipeline,PipelineByPropertyName
		$process.Name = $param.Name
		if ( $param.ParameterType.Name -eq "SwitchParameter" ) {
			$process.Type = "Boolean"
		}
		else {
			switch -regex ( $param.ParameterType ) {
				"Nullable``1[(.+)]" { $process.Type = $matches[1].Split('.')[-1] + " (nullable)" ; break }
				default { $process.Type = $param.ParameterType.Name }
			}
		}
		if ( $paramset.name -eq "__AllParameterSets" ) { $process.ParameterSet = "Default" }
		else { $process.ParameterSet = $paramset.Name }
		$process.Aliases = $param.aliases
		if ( $param.Position -lt 0 ) { $process.Position = $null }
		else { $process.Position = $param.Position }
		$process.IsMandatory = $param.IsMandatory
		$process.Pipeline = $param.ValueFromPipeline
		$process.PipelineByPropertyName = $param.ValueFromPipelineByPropertyName
		$output += $process
	}
	if ( ! $Full ) { 
		$Output | Select-Object Name,Pipeline
	}
	else { Write-Output $Output }
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读