友。
可能是一个非常好的简单的。
在这个technet线程' BigTeddy'写了一个精彩的小脚本,从Get-Service查询中获取动态菜单。
我正在做类似的事情,想知道如何在菜单中列出名称和状态。
以下是代码:
$processes = Get-Process
$menu = @{}
for ($i=1;$i -le $processes.count; $i++)
{ Write-Host "$i. $($processes[$i-1].name)"
$menu.Add($i,($processes[$i-1].name)) }
[int]$ans = Read-Host 'Enter selection'
$selection = $menu.Item($ans) ; Get-Process $selection
这是否可以轻松实现?我在PowerShell的基本用户周围,因此无法确定放置.Status的位置(如果有的话)
由于
答案 0 :(得分:6)
我猜你已经得到了答复或者想出了这个答案?
将get-process切换到get-service
$services = Get-Service
$menu = @{}
for ($i=1;$i -le $services.count; $i++)
{ Write-Host "$i. $($services[$i-1].name),$($services[$i-1].status)"
$menu.Add($i,($services[$i-1].name))}
[int]$ans = Read-Host 'Enter selection'
$selection = $menu.Item($ans) ; Get-Service $selection
答案 1 :(得分:0)
对于寻找这篇文章的其他人,我遇到了一些问题
$selection = $menu.Item($ans)
如果你需要原始数组/集合的其他属性试试
$selection = $services[$ans-1]
然后就可以访问了
$selection.DisplayName
$selection.StartMode
等