Sendet ICMP-Echoanforderungspakete ("Pings") an einen oder mehrere Computer. (Test-Connection)
NAMETest-ConnectionÜBERSICHTSendet ICMP-Echoanforderungspakete ("Pings") an einen oder mehrere Computer.SYNTAXTest-Connection [-ComputerName] <string[]> [[-Source] <string[]>] [-AsJob] [-Authentication {Default | None | Connect | Call | Packet | PacketIntegrity | PacketPrivacy | Unchanged}] [-BufferSize <int>] [-Count <int>] [-Credential <PSCredential>] [-Delay <int>] [-Impersonation {Default | Anonymous | Identify | Impersonate | Delegate}] [-Quiet] [-ThrottleLimit <int>] [-TimeToLive <int>] [<CommonParameters>]BESCHREIBUNGDas Cmdlet "Test-Connection" sendet Internet Control Message Protocol (ICMP)-Echoanforderungspakete ("Pings") an einen oder mehrere Remotecomputer und gibt die Echoantworten zurück. Sie können mit diesem Cmdlet bestimmen, ob ein bestimmter Computer über ein IP-Netzwerk erreicht werden kann. Mit den Parametern von Test-Connection können Sie den sendenden und den empfangenden Computer angeben, den Befehl als Hintergrundauftrag ausführen, ein Timeout und eine Anzahl von Pings festlegen sowie die Verbindung und die Authentifizierung konfigurieren. Im Gegensatz zum herkömmlichen Ping-Befehl gibt Test-Connection ein Win32_PingStatus-Objekt zurück, das Sie in Windows PowerShell überprüfen können. Mit dem Quiet-Parameter können Sie jedoch erzwingen, dass ausschließlich ein boolescher Wert zurückgegeben wird.PARAMETER-AsJob [<SwitchParameter>] Führt den Befehl als Hintergrundauftrag aus. Hinweis: Um diesen Parameter zu verwenden, müssen die lokalen Computer und Remotecomputer für Remoting konfiguriert sein, und Sie müssen Windows PowerShell unter Windows Vista und höheren Versionen von Windows mit der Option "Als Administrator ausführen" öffnen. Weitere Informationen finden Sie unter "about_Remote_Requirements". Wenn Sie den AsJob-Parameter verwenden, gibt der Befehl sofort ein Objekt zurück, das den Hintergrundauftrag darstellt. Sie können die Sitzung weiterhin verwenden, während der Auftrag abgeschlossen wird. Der Auftrag wird auf dem lokalen Computer erstellt, und die Ergebnisse von Remotecomputern werden automatisch an den lokalen Computer zurückgegeben. Um die Auftragsergebnisse abzurufen, verwenden Sie das Cmdlet "Receive-Job". Weitere Informationen über Windows PowerShell-Hintergrundaufträge finden Sie unter "about_Jobs" und "about_Remote_Jobs". Erforderlich? false Position? named Standardwert False Pipelineeingaben akzeptieren?false Platzhalterzeichen akzeptieren?false -Authentication <AuthenticationLevel> Gibt die Authentifizierungsebene an, die für die WMI-Verbindung verwendet wird. (Test-Connection verwendet WMI.) Gültige Werte: Unchanged: Die Authentifizierungsebene entspricht dem vorherigen Befehl. Default: Windows-Authentifizierung. None: Keine COM-Authentifizierung. Connect: COM-Authentifizierung auf Verbindungsebene. Call: COM-Authentifizierung auf Aufrufebene. Packet: COM-Authentifizierung auf Paketebene. PacketIntegrity: COM-Authentifizierung auf Paketintegritätsebene. PacketPrivacy: COM-Authentifizierung auf Paketsicherheitsebene. Erforderlich? false Position? named Standardwert 4 Pipelineeingaben akzeptieren?false Platzhalterzeichen akzeptieren?false -BufferSize <int> Gibt die Größe des mit diesem Befehl gesendeten Puffers in Bytes an. Der Standardwert lautet 32. Erforderlich? false Position? named Standardwert 32 Pipelineeingaben akzeptieren?false Platzhalterzeichen akzeptieren?false -ComputerName <string[]> Gibt die zu pingenden Computer an. Geben Sie die Computernamen oder IP-Adressen im IPv4- oder IPv6-Format ein. Platzhalterzeichen sind nicht zulässig. Dieser Parameter ist erforderlich. Dieser Parameter beruht nicht auf Windows PowerShell-Remoting. Sie können den ComputerName-Parameter auch dann verwenden, wenn der Computer nicht für das Ausführen von Remotebefehlen konfiguriert ist. Erforderlich? true Position? 1 Standardwert Pipelineeingaben akzeptieren?true (ByPropertyName) Platzhalterzeichen akzeptieren?false -Count <int> Gibt die Anzahl der zu sendenden Echoanforderungen an. Der Standardwert lautet 4. Erforderlich? false Position? named Standardwert 4 Pipelineeingaben akzeptieren?false Platzhalterzeichen akzeptieren?false -Credential <PSCredential> Gibt ein Benutzerkonto an, das über die Berechtigung zum Ausführen dieser Aktion verfügt. Geben Sie einen Benutzernamen ein, z. B. "User01" oder "Domain01\User01", oder geben Sie ein PSCredential-Objekt ein, z. B. ein Objekt aus dem Cmdlet "Get-Credential". Erforderlich? false Position? named Standardwert Aktueller Benutzer Pipelineeingaben akzeptieren?false Platzhalterzeichen akzeptieren?false -Delay <int> Gibt das Intervall zwischen Pings in Sekunden an. Erforderlich? false Position? named Standardwert 1 (Sekunde) Pipelineeingaben akzeptieren?false Platzhalterzeichen akzeptieren?false -Impersonation <ImpersonationLevel> Gibt die Identitätswechselebene an, die beim Aufrufen von WMI verwendet werden soll. (Test-Connection verwendet WMI.) Der Standardwert ist "Impersonate". Gültige Werte: Default: Standardidentitätswechsel. Anonymous: Blendet die Identität des Aufrufers aus. Identify: Ermöglicht es Objekten, die Anmeldeinformationen des Aufrufers abzufragen. Impersonate: Ermöglicht es Objekten, die Anmeldeinformationen des Aufrufers zu verwenden. Erforderlich? false Position? named Standardwert 3 Pipelineeingaben akzeptieren?false Platzhalterzeichen akzeptieren?false -Quiet [<SwitchParameter>] Unterdrückt alle Fehler und gibt "$True" zurück, wenn einer der Ping-Befehle erfolgreich war, und "$False" wenn kein Befehl erfolgreich war. Erforderlich? false Position? named Standardwert False Pipelineeingaben akzeptieren?false Platzhalterzeichen akzeptieren?false -Source <string[]> Gibt die Namen der Computer an, von denen der Ping stammt. Geben Sie eine durch Trennzeichen getrennte Liste von Computernamen ein. Der Standardwert ist der lokale Computer. Erforderlich? false Position? 2 Standardwert Lokaler Computer Pipelineeingaben akzeptieren?false Platzhalterzeichen akzeptieren?false -ThrottleLimit <int> Gibt die maximale Anzahl von gleichzeitigen Verbindungen an, die zum Ausführen dieses Befehls hergestellt werden können. Wenn Sie diesen Parameter weglassen oder den Wert 0 eingeben, wird der Standardwert 32 verwendet. Die Drosselungsgrenze gilt nur für den aktuellen Befehl und nicht für die Sitzung oder den Computer. Erforderlich? false Position? named Standardwert 32 Pipelineeingaben akzeptieren?false Platzhalterzeichen akzeptieren?false -TimeToLive <int> Gibt die maximale Zeit in Sekunden an, die jedes Echoanforderungspaket ("Pings") aktiv ist. Der Standardwert beträgt 80 (Sekunden). Der Alias des TimeToLive-Parameters ist "TTL". Erforderlich? false Position? named Standardwert 80 Pipelineeingaben akzeptieren?false Platzhalterzeichen akzeptieren?false <CommonParameters> Dieses Cmdlet unterstützt folgende allgemeine Parameter: "Verbose", "Debug", "ErrorAction", "ErrorVariable", "WarningAction", "WarningVariable", "OutBuffer" und "OutVariable". Weitere Informationen erhalten Sie mit dem Befehl "get-help about_commonparameters".EINGABENKeiner Eingaben können nicht über die Pipeline an dieses Cmdlet übergeben werden.AUSGABENSystem.Management.ManagementObject#root\cimv2\Win32_PingStatus, System.Management.Automation.RemotingJob, System.Boolean Wenn Sie den AsJob-Parameter verwenden, wird vom Cmdlet ein Auftragsobjekt zurückgegeben. Bei Verwendung des Quiet-Parameters wird ein boolescher Wert zurückgegeben. Andernfalls gibt dieses Cmdlet ein Win32_PingStatus-Objekt für jede Ping-Ausführung zurück.HINWEISEDieses Cmdlet verwendet die Win32_PingStatus-Klasse. Der Befehl "get-wmiojbect win32_pingstatus" entspricht dem Befehl "Test-Connection".Beispiele
BEISPIEL 1C:\PS>test-connection server01 Source Destination IPV4Address IPV6Address Bytes Time(ms) ------ ----------- ----------- ----------- ----- -------- ADMIN1 Server01 157.59.137.44 32 0 ADMIN1 Server01 157.59.137.44 32 0 ADMIN1 Server01 157.59.137.44 32 0 ADMIN1 Server01 157.59.137.44 32 1 Beschreibung ----------- Dieser Befehl sendet Echoanforderungspakete ("Pings") vom lokalen Computer an den Computer "Server01". Dieser Befehl gibt mit dem ComputerName-Parameter den Computer "Server01" an, der optionale Parametername wird jedoch weggelassen.BEISPIEL 2C:\PS>test-connection -computername server01, server02, server12 -credential domain01\user01 Beschreibung ----------- Dieser Befehl sendet Pings vom lokalen Computer an mehrere Remotecomputer. Mit dem Credential-Parameter wird ein Benutzerkonto angegeben, das über die Berechtigung zum Pingen aller Remotecomputer verfügt.BEISPIEL 3C:\PS>test-connection -source Server02, Server 12, localhost -computername Server01 Beschreibung ----------- Mit diesem Befehl werden Pings von unterschiedlichen Quellcomputern an einen einzelnen Remotecomputer (Server01) gesendet. Verwenden Sie diesen Befehl, um die Wartezeit von Verbindungen von mehreren Punkten aus zu überprüfen.BEISPIEL 4C:\PS>test-connection -computername Server01 -count 3 -delay 2 -TTL 256 -buffersize 256 -throttle 32 Beschreibung ----------- Dieser Befehl sendet drei Pings vom lokalen Computer an den Computer "Server01". Der Befehl wird mit den Parametern von Test-Connection angepasst. Verwenden Sie dieses Befehlsformat, wenn Sie erwarten, dass die Pingantwort aufgrund von vielen Hops oder einer Netzwerkverbindung mit viel Datenverkehr ungewöhnlich lange dauert.BEISPIEL 5C:\PS>$job = test-connection -computername (get-content servers.txt) -asjob C:\PS> if ($job.jobstateinfo.state -ne "Running") {$results = receive-job $job} Beschreibung ----------- In diesem Beispiel wird das Ausführen des Befehls "Test-Connection" als Windows PowerShell-Hintergrundauftrag veranschaulicht. Mit dem ersten Befehl werden mithilfe des Cmdlets "Test-Connection" eine Vielzahl von Computern in einem Unternehmen gepingt. Bei dem Wert des ComputerName-Parameters handelt es sich um den Befehl "Get-Content", der eine Liste von Computernamen aus der Datei "Servers.txt" liest. Bei dem Befehl wird der Befehl mithilfe des AsJob-Parameters als Hintergrundauftrag ausgeführt. Mit dem zweiten Befehl wird überprüft, ob der Auftrag nicht weiterhin ausgeführt wird. Wenn dies nicht der Fall ist, werden mit dem Befehl "Receive-Job" die Ergebnisse abgerufen und in der Variablen "$results" gespeichert.BEISPIEL 6C:\PS>test-connection Server55 -credential domain55\user01 -impersonation Identify Beschreibung ----------- Bei diesem Befehl wird ein Remotecomputer mit dem Cmdlet "Test-Connection" gepingt. Der Befehl gibt mithilfe des Credential-Parameters ein Benutzerkonto mit der Berechtigung zum Pingen des Remotecomputers an. Mit dem Impersonation-Parameter wird die Identitätswechselebene in "Identify" geändert.BEISPIEL 7C:\PS>if (test-connection -computername Server01 -quiet) {new-pssession Server01} Beschreibung ----------- Mit diesem Befehl wird nur dann eine PSSession auf "Server01" erstellt, wenn mindestens eines der an den Computer gesendeten Pings erfolgreich war. Der Befehl verwendet das Cmdlet "Test-Connection", um den Computer "Server01" zu pingen. Der Befehl verwendet den Quiet-Parameter, der einen booleschen Wert zurückgibt, anstelle eines Win32_PingStatus-Objekts. Der Wert ist "$True", wenn einer der vier Ping-Befehle erfolgreich war, und andernfalls "false". Wenn der Befehl "Test-Connection" den Wert "$True" zurückgibt, verwendet der Befehl das Cmdlet "New-PSSession", um PSSession zu erstellen. VERWANDTE LINKS Online version: http://go.microsoft.com/fwlink/?LinkID=135266 (möglicherweise auf Englisch) Add-Computer Restart-Computer Stop-Computer C:\Windows>powershell get-help Enable-ComputerRestore -full
Microsoft Windows [Version 10.0.19045.3693]
Copyright (c) 2023 Microsoft Corporation.
ColorConsole [Version 3.7.1000] PowerShell 2.0-Export