如下说明是翻译: help Set-Service 产生的帮助信息.
译者: Edengundam(马涛)
Set-Service
大纲
改变服务的显示名(display name), 描述(description)或开始模式(starting mode).
语法
Set-Service [-name] <string> [-displayName <string>] [-description <string>] [-startupType {<Automatic> | <Manual> | <Disabled>}] [-whatIf] [-confirm] [<CommonParameters>]
详细描述
Set-Service cmdlet改变服务的属性, 包括: 描述, 显示名和启动类型. 你可以通过服务名称或显示名称(display name)来指定需要挂起的服务.
参数
-name <string>
指定需要被修改的服务名称, 此参数接受通配符.此参数可以在命令行忽略. 你既可以使用"-Name", 也可以使用其别名"-ServiceName", 甚至忽略此参数名.
强制参数?
|
true
|
参数位置?
|
1
|
默认值
|
|
允许从管道绑定输入?
|
true (根据值,根据属性名)
|
允许通配符扩展?
|
false
|
-displayName <string>
为服务指定新的显示名.
强制参数?
|
false
|
参数位置?
|
named
|
默认值
|
|
允许从管道绑定输入?
|
false
|
允许通配符扩展?
|
false
|
-description <string>
为服务指定新的描述.
服务描述出现在管理工具的服务中. 描述信息不是通过Get-Service 取得ServiceController对象的属性, 然而Win32_Service WMI类包含了描述属性. 要获取该类的实例, 使用Get-WMIObject cmdlet.
强制参数?
|
false
|
参数位置?
|
named
|
默认值
|
|
允许从管道绑定输入?
|
false
|
允许通配符扩展?
|
false
|
-startupType <ServiceStartMode>
为服务指定新的启动模式. 合法启动类型如下:
· Automatic: 随着操作系统一起启动.
· Manual : 通过用户或程序启动.
· Disabled : 不能启动.
此参数接受的输入值:
· Automatic
· Manual
· Disabled
强制参数?
|
false
|
参数位置?
|
named
|
默认值
|
|
允许从管道绑定输入?
|
false
|
允许通配符扩展?
|
false
|
-whatIf
描述执行此命令将会发生的现象, 不会真正执行此命令.
强制参数?
|
false
|
参数位置?
|
named
|
默认值
|
|
允许从管道绑定输入?
|
false
|
允许通配符扩展?
|
false
|
-confirm
执行命令前提示你进行确认.
强制参数?
|
false
|
参数位置?
|
named
|
默认值
|
|
允许从管道绑定输入?
|
false
|
允许通配符扩展?
|
false
|
<公共参数>
此命令支持公共参数: -Verbose, -Debug, -ErrorAction, -ErrorVariable, and -OutVariable. 更多信息, 输入, "get-help about_commonparameters".
注意
更多信息, 输入"Get-Help Set-Service -detailed".需要技术信息, 输入"Get-Help Set-Service -full".
如果需要为该命令提供多个参数, 请使用逗号进行分隔. 例如, "<parameter-name> <value1>, <value2>".
Set-Service只有在当前用户有权限时才能控制服务. 如果命令没有正常工作, 可能是您没有执行此操作的必要权限.
要查找您系统上服务的服务名称和显示名称, 输入命令"get-service". 服务名称显示在列名为"Name"的列中, 显示名称显示在列名为"DisplayName"的列中.
例1
C:/PS>set-service -name lanmanworkstation -DisplayName "LanMan Workstation"
此命令将服务lanmanworkstation的显示名称改变成"LanMan Workstation" (默认值: "Workstation"). 此命令使用参数Name来确定需要更改的服务, 参数DisplayName指定服务的新显示名.
例2
C:/PS>get-wmiobject win32_service -filter "name = 'SysmonLog'"
C:/PS>set-service sysmonlog -startuptype automatic
C:/PS>get-wmiobject win32_service -filter "name = 'SysmonLog'"
这几个命令获得Alerts (SysmonLog)服务的启动类型, 将其设置为automatic, 并显示改变的结果. (译者注: 原文中的Performance Logs没有出现, 因此, 暂时将其删去. )
第一个Get-WmiObject cmdlet取得WMI表示SysmonLog服务的对象. 此命令的默认输出将在"StartMode"域中包含启动类型. 第二个命令使用Set-Service改变此服务的启动类型为自动(automatic). 接下来, 再次执行第一个命令查看更改.
要显示计算机上所有服务的启动类型, 输入: "get-wmiobject win32_service | format-table Name, StartMode -autosize".
例3
C:/PS>C:/PS>set-service -name Schedule -description "Configures and schedules tasks."
get-wmiobject win32_service | where-object {$_.Name -eq "Schedule"} | format-list Name, Description
这几条命令改变服务Task Scheduler服务的描述信息, 然后将结果输出.
命令首先使用Set-Service改变服务描述. 通过指定服务名称"Schedule"来确定需要修改的服务.
第二命令使用Get-WmiObject cmdlet获取WMI Win32_Service的Task Scheduler服务实例. 命令第一部分用来去的所有Win32_service类的实例. 管道运算符 (|)将结果发送给Where-Object cmdlet, 此命令去则那些名称属性为"Schedule"的实例. 另一个管道运算符将结果发送给Format-List cmdlet,此命令将输入对象的名称和描述属性列表显示.
相关链接
Get-Service
Start-Service
Stop-Service
Restart-Service
Resume-Service
Suspend-Service
New-Service