Перезапускает ("перезагружает") операционную систему локального и удаленных компьютеров.

Синтаксис

Restart-Computer [[-ComputerName] <string[]>] [[-Credential] <PSCredential>] [-AsJob] [-Authentication {<Default> | <None> | <Connect> | <Call> | <Packet> | <PacketIntegrity> | <PacketPrivacy> | <Unchanged>}] [-Force] [-Impersonation {<Default> | <Anonymous> | <Identify> | <Impersonate> | <Delegate>}] [-ThrottleLimit <int>] [-Confirm] [-WhatIf] [<CommonParameters>]

Описание

Командлет Restart-Computer перезапускает операционную систему локального и удаленных компьютеров.

С помощью параметров командлета Restart-Computer можно выполнять операции перезагрузки в качестве фонового задания, задавать уровни проверки подлинности, использовать другие учетные данные, ограничивать количество одновременно выполняемых операций, а также принудительно перезагружать компьютер.

Этому командлету не требуется удаленное взаимодействие Windows PowerShell, за исключением случаев с использованием параметра AsJob.

Параметры

-AsJob

Запускает команду в качестве фонового задания.

Примечание. Чтобы использовать этот параметр, локальный и удаленный компьютер должны быть настроены на удаленное взаимодействие, и запуск Windows PowerShell под управлением Windows Vista и более поздних версий Windows должен выполняться командой "Запуск от имени администратора". Дополнительные сведения см. в разделе about_Remote_Requirements.

При использовании параметра AsJob команда немедленно возвращает объект, представляющий фоновое задание. Можно продолжить работу в рамках данного сеанса, пока задание завершается. Задание создается на локальном компьютере, и результаты с удаленных компьютеров автоматически возвращаются на локальный компьютер. Чтобы управлять заданием, используйте командлеты Job. Чтобы получить результаты задания, используйте командлет Receive-Job.

Дополнительные сведения о фоновых заданиях в Windows PowerShell см. в разделах about_Jobs и about_Remote_Jobs.

Обязательно?

false

Позиция?

named

Значение по умолчанию

Принимать входные данные из конвейера?

false

Принимать подстановочные знаки?

false

-Authentication <AuthenticationLevel>

Задает уровень проверки подлинности, используемый для WMI-соединения. (Командлет Restart-Computer использует WMI.) По умолчанию используется значение "Packet".

Допустимые значения:

Unchanged: уровень проверки подлинности такой же, как и у предыдущей команды.

Default: проверка подлинности Windows.

None: проверка подлинности COM не используется.

Connect: проверка подлинности COM уровня соединения.

Call: проверка подлинности COM уровня вызова.

Packet: проверка подлинности COM уровня пакета.

PacketIntegrity: проверка подлинности COM уровня целостности пакета.

PacketPrivacy: проверка подлинности COM уровня конфиденциальности пакета.

Обязательно?

false

Позиция?

named

Значение по умолчанию

4

Принимать входные данные из конвейера?

false

Принимать подстановочные знаки?

false

-ComputerName <string[]>

Задает один или несколько удаленных компьютеров. По умолчанию используется значение "Локальный компьютер".

Введите имя NETBIOS, IP-адрес или полное доменное имя удаленного компьютера. Чтобы указать локальный компьютер, введите имя компьютера, точку (.) или "localhost".

Этот параметр не использует удаленное взаимодействие Windows PowerShell. Параметр ComputerName можно использовать, даже если компьютер не настроен на выполнение удаленных команд.

Обязательно?

false

Позиция?

1

Значение по умолчанию

.

Принимать входные данные из конвейера?

true (ByPropertyName)

Принимать подстановочные знаки?

false

-Credential <PSCredential>

Задает учетную запись пользователя, который располагает разрешением для выполнения этого действия. По умолчанию используется значение "Текущий пользователь".

Введите имя пользователя, например "User01" или "Domain01\User01", или введите объект PSCredential, например объект, возвращаемый командлетом Get-Credential.

Обязательно?

false

Позиция?

2

Значение по умолчанию

Current user

Принимать входные данные из конвейера?

false

Принимать подстановочные знаки?

false

-Force

Принудительно инициирует немедленную перезагрузку компьютеров.

Обязательно?

false

Позиция?

named

Значение по умолчанию

False

Принимать входные данные из конвейера?

false

Принимать подстановочные знаки?

false

-Impersonation <ImpersonationLevel>

Задает уровень олицетворения при вызове WMI. (Командлет Restart-Computer использует WMI.) По умолчанию используется значение "Impersonate".

Допустимые значения:

Default: олицетворение по умолчанию.

Anonymous: скрывает идентификатор вызывающего.

Identify: позволяет объектам запрашивать учетные данные вызывающего.

Impersonate: позволяет объектам использовать учетные данные вызывающего.

Обязательно?

false

Позиция?

named

Значение по умолчанию

Impersonate

Принимать входные данные из конвейера?

false

Принимать подстановочные знаки?

false

-ThrottleLimit <int>

Задает максимальное количество одновременных соединений, которые могут быть установлены для выполнения данной команды. Если этот параметр не задан или для него введено значение 0, используется значение по умолчанию 32.

Ограничение скорости относится только к текущей команде, но не к сеансу или компьютеру.

Обязательно?

false

Позиция?

named

Значение по умолчанию

32

Принимать входные данные из конвейера?

false

Принимать подстановочные знаки?

false

-Confirm

Запрашивает подтверждение перед выполнением команды.

Обязательно?

false

Позиция?

named

Значение по умолчанию

Принимать входные данные из конвейера?

false

Принимать подстановочные знаки?

false

-WhatIf

Описывает, что произойдет при выполнении команды, без ее фактического выполнения.

Обязательно?

false

Позиция?

named

Значение по умолчанию

Принимать входные данные из конвейера?

false

Принимать подстановочные знаки?

false

<CommonParameters>

Данный командлет поддерживает общие параметры -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer и -OutVariable. Дополнительные сведения см. в разделе about_Commonparameters.

Ввод и вывод

Входным типом является тип объектов, которые можно передавать командлету по конвейеру. Возвращаемым типом является тип объектов, возвращаемых командлетом.

Входные данные

Нет

Передать входные данные этому командлету по конвейеру невозможно.

Выходные данные

None или System.Management.Automation.RemotingJob

Если задан параметр AsJob, командлет возвращает объект задания. В противном случае командлет не формирует никаких выходных данных.

Примечания

В этом командлете используется метод Win32Shutdown класса WMI WIN32_OperatingSystem.

Пример 1

C:\PS>restart-computer

Описание
-----------
Эта команда перезагружает локальный компьютер.






Пример 2

C:\PS>restart-computer -computername Server01, Server02, localhost

Описание
-----------
Эта команда перезагружает два удаленных компьютера: Server01 и Server02, а также локальный компьютер, указанный как "localhost".






Пример 3

C:\PS>$j = restart-computer -computername Server01, Server02 -asjob 

C:\PS> $results = $j | receive-job

C:\PS> $results

Описание
-----------
В приведенных командах команда Restart-Computer выполняется в качестве фонового задания на двух удаленных компьютерах, после чего выводятся результаты.

В первой команде используется параметр AsJob для выполнения команды в качестве фонового задания. Полученный объект задания сохраняется в переменной $j.

Во второй команде объект задания, сохраненный в переменной $j, с помощью оператора конвейера передается командлету Receive-Job, который получает результаты выполнения задания. Результаты сохраняются в переменной $results. 

Третья команда отображает результаты, сохраненные в переменной $results.

Поскольку при использовании параметра AsJob задание создается на локальном компьютере и результаты автоматически возвращаются на локальный компьютер, команду Receive-Job можно выполнять как локальную команду.






Пример 4

C:\PS>restart-computer -comp Server01 -impersonation anonymous -authentication PacketIntegrity

Описание
-----------
Эта команда перезагружает удаленный компьютер Server01. В команде используются настроенные параметры олицетворения и проверки подлинности.






Пример 5

C:\PS>$s = get-content domain01.txt

C:\PS> $c = get-credential domain01\admin01

C:\PS> restart-computer -computername $s -force -throttlelimit 10 -credential $c

Описание
-----------
Эти команды принудительно инициируют немедленную перезагрузку всех компьютеров в домене Domain01. 

Первая команда получает список компьютеров в домене и сохраняет его в переменной $s.

Вторая команда получает учетные данные администратора домена и сохраняет их в переменной $c.

Третья команда перезагружает компьютеры. Параметр ComputerName используется для передачи списка компьютеров в переменной $s, параметр Force — для принудительной немедленной перезагрузки, а параметр Credential — для передачи учетных данных, сохраненных в переменной $c. Кроме того, с помощью параметра ThrottleLimit количество устанавливаемых командой одновременных соединений ограничивается десятью.






См. также