Start-Service
하나 이상의 중지된 서비스를 시작합니다.
구문
Start-Service
[-InputObject] <ServiceController[]>
[-PassThru]
[-Include <String[]>]
[-Exclude <String[]>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Start-Service
[-Name] <String[]>
[-PassThru]
[-Include <String[]>]
[-Exclude <String[]>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Start-Service
[-PassThru]
-DisplayName <String[]>
[-Include <String[]>]
[-Exclude <String[]>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
이 cmdlet은 Windows 플랫폼에서만 사용할 수 있습니다.
cmdlet은 Start-Service
지정된 각 서비스에 대해 Windows 서비스 컨트롤러에 시작 메시지를 보냅니다. 서비스가 이미 실행 중인 경우 메시지는 오류 없이 무시됩니다. 서비스 이름 또는 표시 이름으로 서비스를 지정하거나 InputObject 매개 변수를 사용하여 시작하려는 서비스를 나타내는 서비스 개체를 제공할 수 있습니다.
예제
예제 1: 해당 이름을 사용하여 서비스 시작
다음은 로컬 컴퓨터에서 EventLog 서비스를 시작하는 예제입니다. Name 매개 변수는 서비스 이름으로 서비스를 식별합니다.
Start-Service -Name "eventlog"
예제 2: 서비스를 시작하지 않고 정보 표시
이 예제에서는 "remote"을 포함하는 표시 이름이 있는 서비스를 시작한 경우 어떤 일이 발생하는지 보여 줍니다.
Start-Service -DisplayName *remote* -WhatIf
DisplayName 매개 변수는 서비스 이름 대신 표시 이름으로 서비스를 식별합니다. WhatIf 매개 변수를 사용하면 명령을 실행할 때 발생하는 작업을 cmdlet에 표시하지만 변경하지는 않습니다.
예제 3: 서비스 시작 및 텍스트 파일에 작업 기록
다음은 컴퓨터에서 WMI(Windows Management Instrumentation) 서비스를 시작하고 작업의 레코드를 services.txt 파일에 추가하는 예제입니다.
$s = Get-Service wmi
Start-Service -InputObject $s -PassThru | Format-List >> services.txt
먼저 WMI 서비스를 나타내는 개체를 가져와 변수에 $s
저장하는 데 사용합니다Get-Service
. 다음으로 서비스를 시작합니다. PassThru 매개 변수가 없으면 출력을 Start-Service
만들지 않습니다. 파이프라인 연산자(|
)는 개체 출력을 Format-List
cmdlet에 Start-Service
전달하여 개체를 해당 속성 목록으로 서식을 지정합니다. 추가 리디렉션 연산자(>>
)는 출력을 services.txt 파일로 리디렉션합니다. 출력은 기존 파일의 끝에 추가됩니다.
예제 4: 비활성화된 서비스 시작
이 예제에서는 서비스의 시작 유형이 사용 안 함인 경우 서비스를 시작하는 방법을 보여줍니다.
PS> Start-Service tlntsvr
Start-Service : Service 'Telnet (TlntSvr)' cannot be started due to the following error: Cannot start service TlntSvr on computer '.'.
At line:1 char:14
+ Start-Service <<<< tlntsvr
PS> Get-CimInstance win32_service | Where-Object Name -eq "tlntsvr"
ExitCode : 0
Name : TlntSvr
ProcessId : 0
StartMode : Disabled
State : Stopped
Status : OK
PS> Set-Service tlntsvr -StartupType manual
PS> Start-Service tlntsvr
텔넷 서비스(tlntsvr)를 시작하는 첫 번째 시도가 실패합니다. 이 Get-CimInstance
명령은 Tlntsvr 서비스의 StartMode 속성이 Disabled임을 보여 줍니다. cmdlet은 Set-Service
시작 유형을 수동으로 변경합니다. 이제 명령을 다시 제출할 Start-Service
수 있습니다. 이번에는 명령이 성공합니다. 명령이 성공했는지 확인하려면 .를 실행 Get-Service
합니다.
매개 변수
-Confirm
cmdlet을 실행하기 전에 확인 메시지가 표시됩니다.
형식: | SwitchParameter |
별칭: | cf |
Position: | Named |
Default value: | False |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-DisplayName
시작할 서비스의 표시 이름을 지정합니다. 와일드카드 문자를 사용할 수 있습니다.
형식: | String[] |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | True |
-Exclude
이 cmdlet에서 생략하는 서비스를 지정합니다. 이 매개 변수의 값은 Name 매개 변수를 한정합니다. 이름 요소 또는 패턴(예: s*
.)을 입력합니다. 와일드카드 문자를 사용할 수 있습니다.
형식: | String[] |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | True |
-Include
이 cmdlet이 시작하는 서비스를 지정합니다. 이 매개 변수의 값은 Name 매개 변수를 한정합니다. 이름 요소 또는 패턴(예: s*
.)을 입력합니다. 와일드카드 문자를 사용할 수 있습니다.
형식: | String[] |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | True |
-InputObject
시작할 서비스를 나타내는 ServiceController 개체를 지정합니다. 개체를 포함하는 변수를 입력하거나 개체를 가져오는 명령 또는 식을 입력하세요.
형식: | ServiceController[] |
Position: | 0 |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | True |
와일드카드 문자 허용: | False |
-Name
시작할 서비스의 서비스 이름을 지정합니다.
매개 변수 이름은 선택 사항입니다. 이름 또는 해당 별칭인 ServiceName을 사용하거나 매개 변수 이름을 생략할 수 있습니다.
형식: | String[] |
별칭: | ServiceName |
Position: | 0 |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | True |
와일드카드 문자 허용: | False |
-PassThru
서비스를 나타내는 개체를 반환합니다. 기본적으로 이 cmdlet은 출력을 생성하지 않습니다.
형식: | SwitchParameter |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-WhatIf
cmdlet이 실행될 경우 결과 동작을 표시합니다. cmdlet이 실행되지 않습니다.
형식: | SwitchParameter |
별칭: | wi |
Position: | Named |
Default value: | False |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
입력
서비스 개체를 이 cmdlet으로 파이프할 수 있습니다.
서비스 이름이 포함된 문자열을 이 cmdlet으로 파이프할 수 있습니다.
출력
None
기본적으로 이 cmdlet은 출력을 반환하지 않습니다.
PassThru 매개 변수를 사용하는 경우 이 cmdlet은 서비스를 나타내는 ServiceController 개체를 반환합니다.
참고
PowerShell에는 다음 별칭이 포함됩니다.Start-Service
- Windows:
sasv
이 cmdlet은 Windows 플랫폼에서만 사용할 수 있습니다.
Start-Service
는 현재 사용자에게 이 작업을 수행할 수 있는 권한이 있는 경우에만 서비스를 제어할 수 있습니다. 따라서 명령이 제대로 작동하지 않는 경우 필요한 권한이 없을 수 있습니다.- 시스템에서 서비스 이름을 찾고 서비스 이름을 표시하려면 .를 입력
Get-Service
합니다. 서비스 이름은 이름 열에 표시되고 표시 이름은 DisplayName 열에 표시됩니다. - 수동, 자동 또는 자동(지연된 시작)의 시작 유형이 있는 서비스만 시작할 수 있습니다. 시작 유형이 Disabled인 서비스는 시작할 수 없습니다.
Start-Service
메시지Cannot start service \<service-name\> on computer
Get-CimInstance
와 함께 명령이 실패하는 경우 서비스의 시작 유형을 찾고, 이 경우 cmdlet을 사용하여Set-Service
서비스의 시작 유형을 변경합니다. - 성능 로그 및 경고(SysmonLog)와 같은 일부 서비스는 수행할 작업이 없는 경우 자동으로 중지됩니다. PowerShell이 거의 즉시 중지되는 서비스를 시작하면 다음 메시지가 표시됩니다.
Service \<display-name\> start failed.
관련 링크
PowerShell