我已经为简单的启动或停止以及服务数组编写了一个powershell脚本。
这是我当前的脚本:
param([Switch] $Stop, [Switch] $Start)
$services = @(
"Service1",
"Service2",
"Service3",
"etc"
)
if ($Start -eq $true) {
echo "Starting services..."
get-service $services | start-Service
}
if ($Stop -eq $true) {
echo "Stopping services..."
get-service $services | stop-Service
}
echo "Done."
该命令是简单地Services -stop
或Services -start
我喜欢的参数-stop
或是-start
可发现的(单击选项卡时)。
当前,这将停止或启动阵列中的所有服务,我也想选择停止或启动特定服务。
如果我修改参数并输入服务名称,这很容易。
但是我真正想做的是,将这些服务名称固定在我的数组中,并以相同的方式发现它们,以便单击选项卡将通过可用的默认值吗?
结果可能是这样的:
Services -stop -service:Service1
这可能吗?要将-service限制为我的阵列中的服务?
您可以使用ValidateSet属性来执行此操作,例如:
param(
[Parameter()]
[Switch]
$Stop,
[Parameter()]
[Switch]
$Start,
[Parameter()]
[ValidateSet("Service1","Service2","Service3","etc")]
[string[]]
$Service
)
...
您将像这样调用制表符完成:
Services -stop -service <tab>
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句