powershell参数命令行菜单
powershell parameters command line menu
我想创建一个脚本,它接受来自命令行的输入并根据第一个值确定下一个提供的参数。
例如确定您是要对密码更改操作执行单个 运行 还是批量 运行:
./script.ps1 -singleMODE -UserName -Password
./script.ps1 -batchMODE -filename
我在学习Powershell的时候很困惑,这是什么?我查看了参数并可以从命令行将它们读入变量...但是我上面想要的有一些逻辑,我有点迷路了。有人能告诉我这叫什么吗……然后我就可以继续我的谷歌搜索了! :)
我在想我以某种方式结合了参数和函数,所以它会轻弹到不同的块...但我猜
感谢任何帮助! :)
干杯
你需要的是参数集
这是一个带有函数的演示,但它与脚本一起使用效果一样好(只需将参数块放在顶部即可。)
function Demo {
param(
[Parameter(ParameterSetName='Funk')][switch]$Funk,
[Parameter(ParameterSetName='Rock')][switch]$Rock,
[Parameter(ParameterSetName='Funk')][string]$WriteFunk,
[Parameter(ParameterSetName='Rock')][string]$WriteRock
)
if($Funk){
foreach ($C in $WriteFunk.ToCharArray()){
$N = 0..15 | Get-Random
Write-Host $C -ForegroundColor $N -BackgroundColor $(15-$N) -NoNewline
}
Write-Host ''
}
if($Rock){
Write-Host $WriteRock -ForegroundColor Gray -BackgroundColor DarkGray
}
}
Demo -Funk -WriteFunk "Melt your brain"
Demo -Rock -WriteRock "Riders on the storm"
我想创建一个脚本,它接受来自命令行的输入并根据第一个值确定下一个提供的参数。
例如确定您是要对密码更改操作执行单个 运行 还是批量 运行:
./script.ps1 -singleMODE -UserName -Password
./script.ps1 -batchMODE -filename
我在学习Powershell的时候很困惑,这是什么?我查看了参数并可以从命令行将它们读入变量...但是我上面想要的有一些逻辑,我有点迷路了。有人能告诉我这叫什么吗……然后我就可以继续我的谷歌搜索了! :)
我在想我以某种方式结合了参数和函数,所以它会轻弹到不同的块...但我猜
感谢任何帮助! :)
干杯
你需要的是参数集
这是一个带有函数的演示,但它与脚本一起使用效果一样好(只需将参数块放在顶部即可。)
function Demo {
param(
[Parameter(ParameterSetName='Funk')][switch]$Funk,
[Parameter(ParameterSetName='Rock')][switch]$Rock,
[Parameter(ParameterSetName='Funk')][string]$WriteFunk,
[Parameter(ParameterSetName='Rock')][string]$WriteRock
)
if($Funk){
foreach ($C in $WriteFunk.ToCharArray()){
$N = 0..15 | Get-Random
Write-Host $C -ForegroundColor $N -BackgroundColor $(15-$N) -NoNewline
}
Write-Host ''
}
if($Rock){
Write-Host $WriteRock -ForegroundColor Gray -BackgroundColor DarkGray
}
}
Demo -Funk -WriteFunk "Melt your brain"
Demo -Rock -WriteRock "Riders on the storm"