Stop-Computer
Останавливает (завершает работу) локальный и удаленные компьютеры.
Синтаксис
Stop-Computer
[-WsmanAuthentication <String>]
[[-ComputerName] <String[]>]
[[-Credential] <PSCredential>]
[-Force]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Описание
Командлет Stop-Computer
завершает работу локального компьютера и удаленных компьютеров.
Параметры можно использовать Stop-Computer
для указания уровней проверки подлинности и альтернативных учетных данных, а также для принудительного немедленного завершения работы.
В PowerShell 7.1 Stop-Computer
был добавлен для Linux и macOS. Параметры не влияют на эти платформы. Командлет просто вызывает собственную команду /sbin/shutdown
.
Примеры
Пример 1. Завершение работы локального компьютера
В этом примере выполняется завершение работы локального компьютера.
Stop-Computer -ComputerName localhost
Пример 2. Завершение работы двух удаленных компьютеров и локального компьютера
В этом примере останавливается два удаленных компьютера и локальный компьютер.
Stop-Computer -ComputerName "Server01", "Server02", "localhost"
Stop-Computer
использует параметр ComputerName для указания двух удаленных компьютеров и локального компьютера. Каждый компьютер завершает работу.
Пример 3. Завершение работы удаленных компьютеров в качестве фонового задания
В этом примере Stop-Computer
выполняется фоновое задание на двух удаленных компьютерах.
Фоновый оператор &
выполняет Stop-Computer
команду в качестве фонового задания. Дополнительные сведения см. в about_Operators.
$j = Stop-Computer -ComputerName "Server01", "Server02" &
$results = $j | Receive-Job
$results
Stop-Computer
использует параметр ComputerName для указания двух удаленных компьютеров. Фоновый &
оператор выполняет команду в качестве фонового задания. Объекты задания хранятся в переменной $j
.
Объекты задания в переменной $j
отправляются по конвейеру Receive-Job
, в который получают результаты задания. Объекты хранятся в переменной $results
. Переменная $results
отображает сведения о задании в консоли PowerShell.
Пример 4. Завершение работы удаленного компьютера
В этом примере выполняется завершение работы удаленного компьютера с помощью указанной проверки подлинности.
Stop-Computer -ComputerName "Server01" -WsmanAuthentication Kerberos
Stop-Computer
использует параметр ComputerName для указания удаленного компьютера. Параметр WsmanAuthentication указывает, чтобы использовать Kerberos для установления удаленного подключения.
Пример 5. Завершение работы компьютеров в домене
В этом примере команды принудительно завершают работу всех компьютеров в указанном домене.
$s = Get-Content -Path ./Domain01.txt
$c = Get-Credential -Credential Domain01\Admin01
Stop-Computer -ComputerName $s -Force -Credential $c
Get-Content
использует параметр Path для получения файла в текущем каталоге со списком компьютеров домена. Объекты хранятся в переменной $s
.
Get-Credential
использует параметр Credential для указания учетных данных администратора домена. Учетные данные хранятся в переменной $c
.
Stop-Computer
Завершает работу компьютеров, указанных в списке параметров ComputerName в переменной $s
. Параметр Force вызывает немедленное завершение работы. Параметр Credential отправляет учетные данные, сохраненные в переменной $c
.
Параметры
-ComputerName
Указывает компьютеры, которые нужно остановить. По умолчанию используется локальный компьютер.
Введите имя NetBIOS, IP-адрес или полное доменное имя одного или нескольких компьютеров в списке с разделителями запятыми. Чтобы указать локальный компьютер, введите имя компьютера или localhost.
Этот параметр не зависит от удаленного взаимодействия PowerShell. Параметр ComputerName можно использовать, даже если компьютер не настроен для выполнения удаленных команд.
Type: | String[] |
Aliases: | CN, __SERVER, Server, IPAddress |
Position: | 0 |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Confirm
Запрос подтверждения перед выполнением командлета.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Credential
Указывает учетную запись пользователя, которая имеет разрешение на выполнение этого действия. По умолчанию используется текущий пользователь.
Введите имя пользователя, например User01 или Domain01\User01, или введите объект PSCredential, созданный командлетомGet-Credential
. Если ввести имя пользователя, вам будет предложено ввести пароль.
Учетные данные хранятся в объекте PSCredential , а пароль хранится как SecureString.
Примечание.
Дополнительные сведения о защите данных SecureString см. в разделе "Как безопасна Защита SecureString?".
Type: | PSCredential |
Position: | 1 |
Default value: | Current user |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Force
Принудительное завершение работы компьютера.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WhatIf
Показывает, что произойдет при запуске командлета. Командлет не выполняется.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WsmanAuthentication
Указывает механизм, используемый для проверки подлинности учетных данных пользователя, когда этот командлет использует протокол WSMan. Значение по умолчанию ― Default.
Допустимые значения для этого параметра:
- Базовая
- CredSSP
- По умолчанию.
- Дайджест
- Kerberos
- Negotiate —
Дополнительные сведения о значениях этого параметра см. в разделе AuthenticationMechanism.
Внимание
Проверка подлинности поставщика служб безопасности учетных данных (CredSSP), в которой учетные данные пользователя передаются на удаленный компьютер для проверки подлинности, предназначена для команд, требующих проверки подлинности на нескольких ресурсах, таких как доступ к удаленному сетевому ресурсу. Этот механизм повышает риск безопасности удаленной операции. Если удаленный компьютер скомпрометирован, учетные данные, передаваемые ему, могут использоваться для управления сетевым сеансом.
Этот параметр появился в PowerShell 3.0.
Type: | String |
Accepted values: | Default, Basic, Negotiate, CredSSP, Digest, Kerberos |
Position: | Named |
Default value: | Default |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Входные данные
None
Невозможно передать объекты в этот командлет.
Выходные данные
None
Этот командлет не возвращает выходные данные.
Примечания
Этот командлет использует Win32Shutdown
Win32_OperatingSystem
метод класса WMI. Для этого метода требуется включить привилегию SeShutdownPrivilege
для учетной записи пользователя, используемой для завершения работы компьютера.
В PowerShell 7.1 Stop-Computer
был добавлен для Linux и macOS. Для этих платформ командлет вызывает собственную команду /sbin/shutdown
.
Связанные ссылки
PowerShell
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по