【问题标题】:Get-Service from Variable从变量获取服务
【发布时间】:2016-01-14 08:36:17
【问题描述】:

我想要Get-Service 的用户输入,但它不接受我的变量

我想运行以下命令:

#### --- Content -- ### 
# - Location ##
$Service_text   = "$env:userprofile\documents\PS-Script-Services\Services.txt"

#- Test path
$service_test = Test-Path $Service_text

#-- Get-content ##-
$Get_the_service = Get-Content $service_text

#-loop-# -- Get-Service -- ##
if ($service_test -eq $false) {
  Write-Host "To view your Services go to Start --> en typ services, or go to Powershell and type get-service"
  Write-Host "Which Services do you want to monitor? (Example: Teamviewer, BITS, DHCP, Eventlog, Spooler."  -BackgroundColor Black -ForegroundColor Yellow
  Write-Host "This script only works when a service has been stopped" -BackgroundColor Black -ForegroundColor Yellow
  Read-Host "Enter services" | Out-File $service_text
  $ask_service = Get-Service -Name $Get_the_service

问题是它无法获取服务。

$Service_name  = "dhcp"

Get-Service -Name $service_name

给我这个输出:

状态名称显示名称
------ ---- ------------
运行 dhcp DHCP 客户端

但如果我想要多项服务

$Service_name  = "dhcp, spooler"

Get-Service -Name $service_name

我收到此错误:

Get-Service : 找不到任何服务名称为“dhcp, spooler”的服务。
在行:5 字符:1
+ 获取服务-名称 $service_name
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo : ObjectNotFound: (dhcp, spooler:String) [Get-Service], ServiceCommandException
    + FullyQualifiedErrorId : NoServiceFoundForGivenName,Microsoft.PowerShell.Commands.GetServiceCommand

【问题讨论】:

    标签: powershell variables


    【解决方案1】:

    没有名称为dhcp, spooler 的服务。显然您正在尝试获取服务列表(即dhcpspooler)。为此,您必须将 $Service_name 定义为实际列表,而不是用逗号分隔的单个字符串:

    $Service_name = "dhcp", "spooler"
    

    【讨论】:

      【解决方案2】:

      如果您想检索多个服务,您必须将一个数组传递给Get-Servicecmdlet。您可以使用-split 将您的字符串拆分为一个数组并修剪任何空格:

      Get-Service -Name ($Service_name -split ',' | % { $_.Trim() } )
      

      【讨论】:

        【解决方案3】:

        "dhcp, spooler" 是一个文字字符串。因此,当您将它传递给 get-service 时,Get-Service 会查找名为 dhcp, spooler 的服务。相反,将它传递给以逗号分隔的字符串“列表”。即'dhcp','spooler' 然后,您可以随意传递它。 如果您从文本文件中收集名称,请确保每个服务都在新行中

        【讨论】:

          猜你喜欢
          • 2015-10-09
          • 1970-01-01
          • 1970-01-01
          • 2014-03-17
          • 2021-01-03
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2015-08-24
          相关资源
          最近更新 更多