Welcome to Our Website

Spuštění Vzdálené Příkazy

  • 08/21/2020
  • 3 minut číst
    • j
    • D
    • c

můžete spustit příkazy na jeden nebo stovky počítačů pomocí jediného příkazu PowerShell. WindowsPowerShell podporuje vzdálené výpočty pomocí různých technologií, včetně WMI, RPC, andWS-Management.

PowerShell Core podporuje WMI, WS-Management a SSH remoting., V PowerShell 6 již není RPCPODPOROVÁNO. V PowerShell 7 a výše je RPC podporován pouze ve Windows.

Pro více informací o remoting v prostředí PowerShell Core, viz následující články:

  • SSH Remoting v prostředí PowerShell Core
  • WSMan Remoting v prostředí PowerShell Core

Windows PowerShell Remoting Bez Konfigurace

Mnoho rutin prostředí Windows PowerShell mít ComputerName parametr, který umožňuje sběr dat změnit nastavení na jeden nebo více vzdálených počítačů., Tyto cmdlety používají různé komunikační protokolya pracovat na všech operačních systémech Windows bez jakékoli speciální konfigurace.

Tyto rutiny patří:

  • Restartovat-Počítač
  • Test-Spojení
  • Jasné-EventLog
  • Get-EventLog
  • Get-HotFix
  • Proces
  • Služby
  • Služby
  • Get-WinEvent
  • Get-WmiObject

Typicky, rutin, které podporují remoting bez speciální konfigurace mají ComputerNameparameter a nemám Zasedání parametr., Najít tyto rutiny ve vaší relaci, typ:

Get-Command | where { $_.parameters.keys -contains "ComputerName" -and $_.parameters.keys -notcontains "Session"}

Windows PowerShell Remoting

Pomocí protokolu WS-Management, prostředí Windows PowerShell remoting umožňuje spustit libovolný Windows PowerShellcommand na jeden nebo více vzdálených počítačů. Můžete navázat trvalé připojení, spustit interactivesessions a spouštět skripty na vzdálených počítačích.

Chcete-li používat Windows PowerShell remoting, musí být vzdálený počítač nakonfigurován pro vzdálenou správu.Další informace, včetně pokynů, naleznete v části vzdálené požadavky.,

jakmile jste nakonfigurovali Windows PowerShell remoting, mnoho remoting strategie jsou k dispozici pro vás.Tento článek uvádí jen několik z nich. Pro více informací, viz o dálkovém ovladači.

spusťte interaktivní relaci

Chcete-li zahájit interaktivní relaci pomocí jediného vzdáleného počítače, použijte Enter-PSSessioncmdlet. Například, začít interaktivní relaci s Server01 vzdáleného počítače, zadejte:

Enter-PSSession Server01

Na příkazovém řádku změny se zobrazí název vzdáleného počítače., Všechny příkazy, které zadáte napředpráva běží na vzdáleném počítači a výsledky se zobrazí v místním počítači.

Na konci interaktivní relaci, typ:

Exit-PSSession

Pro více informací o Enter-PSSession a Exit-PSSession rutin, viz:

  • Enter-PSSession
  • Konec-PSSession

Spuštění Vzdáleného Příkazu

Chcete-li spustit příkaz na jeden nebo více počítačů, použijte Invoke-Commandcmdlet., Například, spustit Get-UICulturecommand na Server01 a Server02 vzdáleného počítače, zadejte:

Invoke-Command -ComputerName Server01, Server02 -ScriptBlock {Get-UICulture}

výstup je vrácen do svého počítače.

spusťte skript

Chcete-li spustit skript na jednom nebo mnoha vzdálených počítačích, použijte parametr FilePath Invoke-Commandcmdlet. Skript musí být zapnutý nebo přístupný místnímu počítači. Výsledky jsou vráceny do vašehomístní počítač.

například následující příkaz spustí DiskCollect.ps1 skript na vzdálených počítačích, Server01and Server02.,

Invoke-Command -ComputerName Server01, Server02 -FilePath c:\Scripts\DiskCollect.ps1

Vytvořit Trvalé Připojení

Použití New-PSSession cmdlet k vytvoření trvalé sezení na vzdáleném počítači. Následujícípříklad vytváří vzdálené relace na Server01 a Server02. Objekty relace jsou uloženy v proměnné $s.

$s = New-PSSession -ComputerName Server01, Server02

nyní, když jsou relace vytvořeny, můžete v nich spustit libovolný příkaz. A protože relace jsoutrvalé, můžete sbírat data z jednoho příkazu a použít je v jiném příkazu.,

například následující příkaz spustí příkaz Get-HotFix v relacích v proměnné $s a uloží výsledky do proměnné $h. Proměnná $h je vytvořena v každé relaci v $s, ale v místní relaci neexistuje.

Invoke-Command -Session $s {$h = Get-HotFix}

Nyní můžete použít data v $h proměnné s jinými příkazy ve stejné relaci. Výsledky jsou zobrazeny v místním počítači. Například:

Invoke-Command -Session $s {$h | where {$_.InstalledBy -ne "NTAUTHORITY\SYSTEM"}}

Advanced Remoting

Windows PowerShell remote management právě začíná zde., Pomocí rutin nainstalován s WindowsPowerShell, můžete vytvořit a nakonfigurovat vzdálené relace a to jak z místních a vzdálených konců,vytvořit vlastní a omezené relací, umožňují uživatelům importovat příkazy ze vzdáleného zasedání tohle vlastně běží implicitně na vzdálené relace, konfigurovat zabezpečení vzdálené relace, a mocvíce.

Windows PowerShell obsahuje poskytovatele WSMan. Poskytovatel vytvoří WSMAN: disk, který umožňuje younavigate prostřednictvím hierarchie konfigurace nastavení v místním počítači a vzdálených počítačů.,

Pro více informací o WSMan poskytovatele, seeWSMan Poskytovatele a taky WS-Management Rutiny,nebo v konzole prostředí Windows PowerShell, zadejte Get-Help wsman.

Pro více informací, viz:

  • O Dálkové FAQ
  • Registrace-PSSessionConfiguration
  • Import-PSSession

Pro pomoc s remoting chyby, viz about_Remote_Troubleshooting.,

Viz Také

  • about_Remote
  • about_Remote_FAQ
  • about_Remote_Requirements
  • about_Remote_Troubleshooting
  • about_PSSessions
  • about_WS-Management_Cmdlets
  • Invoke-Command
  • Import-PSSession
  • New-PSSession
  • Registr-PSSessionConfiguration
  • WSMan Poskytovatele

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *