Wie setze ich netmon mit Powershell zurück?

317
j0h

Ich nutze Powershell als Administrator in Windows 8.1. Ich gebe den Befehl, Restart-Service netmonaber es schlägt fehl, wenn kein Dienst gefunden wurde. ok, wie starte ich dann netmon neu?

1
Der Grund, warum es nicht funktioniert, ist, dass Ihre Syntax nicht korrekt ist. [Restart-Service] (https://technet.microsoft.com/de-de/library/hh849823.aspx?f=255&MSPPError=-2147217396) Sie sollten stattdessen `Restart-Service -Name netmon` verwendet haben. Sie müssen sich vergewissern, dass Sie den Namen eines tatsächlich vorhandenen Dienstes verwenden. Ihre Syntax ist jedoch in Ihrer Frage falsch. Ramhound vor 7 Jahren 1
"Netmon" ist kein standardmäßiger Windows 8.1-Dienst. Sie haben also etwas hinzugefügt (oder einen Tippfehler?). Ist es tatsächlich ein "Netmon" -Dienst auf diesem Computer? Wenn Sie `sc query netmon` an einer Eingabeaufforderung ausführen, meldet es, dass ein Dienst mit diesem Namen installiert ist? Ƭᴇcʜιᴇ007 vor 7 Jahren 0
@Ramhound Das Qualifikationsmerkmal "-name" ist nicht erforderlich, wenn keine mehrdeutigen Argumente vorhanden sind. Die grundlegenden Anweisungen von MS für die Verwendung des Befehls lauten "Um Restart-Service zu verwenden, rufen Sie einfach das Cmdlet auf, gefolgt von dem Servicenamen:` Restart-Service btwdins` " Ƭᴇcʜιᴇ007 vor 7 Jahren 1
@ Ƭᴇcʜιᴇ007 - Jedes Beispiel in der Dokumentation des Cmdlets verwendet jedoch das Qualifikationsmerkmal `-Name` Ramhound vor 7 Jahren 0
Es sei darauf hingewiesen, dass `netmon` oder [Network Monitor] (https://www.microsoft.com/de-de/download/details.aspx?id=4865) nicht einmal als Dienst, sondern als ausführbare Datei erscheint . Ramhound vor 7 Jahren 1
@Ramhound Bei TechNet nach Powershell 1.0: ["Verwenden des Cmdlets Restart-Service"] (https://technet.microsoft.com/de-de/library/ee176942.aspx), drei davon nicht erwähnt. Bei TechNet für PS v5: ["Restart-Service"] (https://technet.microsoft.com/de-de/library/hh849823.aspx) listet die "Standardparameter" mit dem Qualifikationsmerkmal `-Name` auf (In den Dokumenten ist dies in eckigen Klammern angegeben). Mein Punkt ist, dass die OPs-Syntax korrekt ist. :) Ich denke, wir befinden uns auf derselben Seite - das OP verweist nur auf einen ungültigen Dienst, wie die Fehlermeldung ihm mitteilte. Ƭᴇcʜιᴇ007 vor 7 Jahren 2

1 Antwort auf die Frage

2
Fazer87

Zuallererst - Ihr Service Same stimmt nicht immer mit dem Serviceanzeigenamen überein. In diesem Beispiel müsste ich Restart-Service vds:

Wenn Sie eine vollständige Serviceliste erhalten und sich den Servicenamen ansehen möchten, können Sie Folgendes tun Get-Service:

Sie können dies mit einer "Where" -Klausel wie folgt einschränken Get-Service | Where {$_.Name -like "Net*"}:

(Oder Sie könnten einfach Ihren Dienst in finden services.mscoder Sie könnten verwenden sc query)

Wenn Sie Ihren tatsächlichen Dienstnamen haben, können Sie den Dienst neu starten, stoppen, starten oder abfragen: Stopp-Dienst | Start-Service | Neustart-Service | Get-Service

In einigen Fällen wird ein Fehler angezeigt, der besagt, dass der Dienst nicht auf Ihrem Computer installiert ist. Normalerweise liegt das daran, dass Sie "As Admistrator" nicht ausführen:

Durch das Erhöhen werden diese Befehle wieder funktionieren: Die Fehlermeldung ist dafür nicht sehr gut - und ich habe gesehen, dass die Benutzer schon mehrmals gestürzt sind.

Bearbeiten - Lesen Sie Ihre Frage einfach noch einmal und sehen Sie, dass Sie bereits als Administrator ausgeführt werden. Können Sie uns bitte einen Screenshot posten? Oder bestätigen Sie es, indem Sie Folgendes ausführen:

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!” } 

Wenn Ihre Sitzung ordnungsgemäß erhöht wurde, wird die Warnung nicht angezeigt (siehe Abbildung unten):