Как мне сбросить Netmon с помощью PowerShell?

250
j0h

Я использую PowerShell, как администратор в Windows8.1. Я даю команду, Restart-Service netmonно она не может быть найдена. хорошо, как мне тогда перезапустить netmon?

1
Причина, по которой это не работает, заключается в том, что ваш синтаксис неверен. [Restart-Service] (https://technet.microsoft.com/en-us/library/hh849823.aspx?f=255&MSPPError=-2147217396) Вместо этого вы должны были использовать `Restart-Service -Name netmon`. Вам необходимо убедиться, что вы используете имя действующей службы, а ваш синтаксис, указанный в вашем вопросе, неверен. Ramhound 8 лет назад 1
«Netmon» - это не стандартная служба Windows 8.1, так что это то, что вы добавили (или опечатка?). Так что, на самом деле это сервис Netmon на этом компьютере? Если вы запустите `sc query netmon` из командной строки, сообщит ли он, что служба с таким именем установлена? Ƭᴇcʜιᴇ007 8 лет назад 0
@Ramhound квалификатор "-name" не нужен, если нет двусмысленных аргументов. Основные инструкции MS по использованию команды гласят: «Чтобы использовать Restart-Service, просто вызовите командлет с именем службы:« Restart-Service btwdins` » Ƭᴇcʜιᴇ007 8 лет назад 1
@ Ƭᴇcʜιᴇ007 - каждый пример в документации по командлету использует квалификатор `-Name`, хотя Ramhound 8 лет назад 0
Стоит отметить, что `netmon` или [Network Monitor] (https://www.microsoft.com/en-us/download/details.aspx?id=4865) даже не является службой, а является исполняемым файлом , Ramhound 8 лет назад 1
@Ramhound Рассматривая TechNet для powershell 1.0: [«Использование командлета Restart-Service»] (https://technet.microsoft.com/en-us/library/ee176942.aspx), три не упоминают об этом. Рассматривая TechNet для PS v5: [«Restart-Service»] (https://technet.microsoft.com/en-us/library/hh849823.aspx) перечисляет «параметры по умолчанию», показывающие квалификатор `-Name` как необязательный (это в квадратных скобках в документах). Я хочу сказать, что просто синтаксис OPs правильный. :) Я думаю, что мы находимся на одной и той же странице - OP просто ссылается на недействительный сервис, как сообщалось в сообщении об ошибке. Ƭᴇcʜιᴇ007 8 лет назад 2

1 ответ на вопрос

2
Fazer87

Прежде всего - ваш сервисный сервис не всегда соответствует отображаемому имени сервиса. В этом примере - мне нужно Restart-Service vds:

enter image description here

Если вы хотите получить полный список услуг и посмотреть на название сервиса, вы можете сделать следующее Get-Service: enter image description here

Затем вы можете сузить это, используя предложение «Где», подобное этому Get-Service | Where {$_.Name -like "Net*"}: enter image description here

(Или вы можете просто найти свой сервис в services.mscили вы могли бы использоватьsc query )

Когда у вас есть действительное имя службы, вы можете перезапустить, остановить, запустить или запросить службу: Stop-Service | Старт-Сервис | Рестарт-Сервис |enter image description here Get-Service

Иногда вы получаете сообщение об ошибке службы, утверждающее, что служба не установлена ​​на вашем компьютере. Обычно это потому, что вы не запускаете «Как администратор»: enter image description here

Поднявшись, эти команды снова начнут работать: enter image description here сообщение об ошибке не очень хорошо для этого - и я видел, как оно несколько раз сбивало людей с толку.

Изменить - просто перечитайте свой вопрос и увидите, что вы уже говорите, что вы уже являетесь администратором. Можете ли вы опубликовать скриншот для нас, пожалуйста? Или подтвердите это, выполнив следующее:

If (-NOT ([Security.Principal.WindowsPrincipal] [Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole] “Administrator”)){ Write-Warning “You do not have Administrator rights to run this script!`nPlease re-run this script as an Administrator!” } 

Если ваш сеанс был должным образом повышен, вы не получите предупреждение, как показано на скриншоте ниже: enter image description here