Welcome to Our Website

Kjører Eksterne Kommandoer

  • 08/21/2020
  • 3 minutter på å lese
    • j
    • s
    • D
    • c

Du kan kjøre kommandoer på en eller hundrevis av datamaskiner med en enkelt PowerShell-kommando. WindowsPowerShell støtter ekstern databehandling ved hjelp av ulike teknologier, inkludert WMI, RPC, andWS-Ledelse.

PowerShell-Kjernen støtter WMI, WS-Management, og SSH remoting., I PowerShell 6, RPC er ingen longersupported. I PowerShell 7 og høyere, RPC støttes bare i Windows.

For mer informasjon om remoting i PowerShell Core, kan du se følgende artikler:

  • SSH Remoting i PowerShell Core
  • WSMan Remoting i PowerShell Core

Windows PowerShell Remoting Uten Konfigurasjon

Mange Windows PowerShell-cmdleter har Datamaskinnavn parameter som gjør det mulig for deg å samle inn data andchange innstillinger på en eller flere eksterne datamaskiner., Bruk disse cmdletene varierende kommunikasjon protocolsand fungere på alle Windows-operativsystemer uten noen spesiell konfigurering.

Disse cmdletene inkluderer:

  • Start på nytt-Datamaskinen
  • Test-Tilkobling
  • Fjern-EventLog
  • Get-EventLog
  • Komme-Hurtigreparasjonen
  • Get-Process
  • Get-Service
  • Set-Service
  • Komme-WinEvent
  • Get-WmiObject

Vanligvis, cmdlets som støtter remoting, uten spesiell konfigurering, har ComputerNameparameter og ikke har Økt parameter., For å finne disse cmdletene i økten din, skriv:

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

Windows PowerShell Remoting

ved Hjelp av WS-Management protocol, Windows PowerShell remoting lar deg kjøre alle Windows-PowerShellcommand på en eller flere eksterne datamaskiner. Du kan opprette faste tilkoblinger, start interactivesessions, og kjøre skript på eksterne datamaskiner.

for Å bruke Windows PowerShell remoting, den eksterne datamaskinen må være konfigurert for remote management.For mer informasjon, inkludert instruksjoner, se Om Eksterne Krav.,

Når du har konfigurert Windows PowerShell remoting, mange remoting strategier som er tilgjengelige for deg.Denne artikkelen viser bare noen av dem. For mer informasjon, se Om Fjernkontrollen.

Start en Interaktiv Sesjon

for Å starte en interaktiv sesjon med en enkelt ekstern datamaskin, kan du bruke Enter-PSSessioncmdlet. For eksempel, for å starte en interaktiv sesjon med Server01 eksterne datamaskinen, skriv:

Enter-PSSession Server01

– ledeteksten endringer for å vise navnet på den eksterne datamaskinen., Alle kommandoer som du skriver atthe be kjører på den eksterne datamaskinen, og resultatene blir vist på den lokale datamaskinen.

for Å avslutte interaktiv sesjon, skriv:

Exit-PSSession

For mer informasjon om Enter-PSSession og Exit-PSSession cmdlets, se:

  • Enter-PSSession
  • Avslutt-PSSession

Kjør en Ekstern Kommando

for Å kjøre en kommando på én eller flere datamaskiner, bruk av Invoke-Commandcmdlet., For eksempel til å kjøre en Get-UICulturecommand på Server01 og Server02 eksterne datamaskiner, skriv:

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

output er tilbakeført til din datamaskin.

Kjør et Skript

Å kjøre et skript på en eller mange eksterne datamaskiner, bruk FilePath av parameteren Invoke-Commandcmdleten. Skriptet må være på eller tilgjengelig til den lokale datamaskinen. Resultatene returneres til yourlocal maskin.

For eksempel, følgende kommando kjører DiskCollect.ps1-skript på eksterne datamaskiner, Server01and Server02.,

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

Etablere en Varig Forbindelse

for New-PSSession cmdlet for å skape en vedvarende økt på en ekstern datamaskin. Den followingexample skaper eksterne økter på Server01 og Server02. Session objekter som er lagret i $svariabel.

$s = New-PSSession -ComputerName Server01, Server02

Nå at øktene er etablert, kan du kjøre en kommando i dem. Og fordi økter arepersistent, kan du samle inn data fra en kommando og bruke den i en annen kommando.,

For eksempel, følgende kommando kjører en Hurtigreparasjon kommando i økter i $s variabel andit lagrer resultater i $h-variabelen. Den $h-variabelen er opprettet i hver av øktene i $s,men det eksisterer ikke i lokal sesjon.

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

Nå kan du bruke dataene i $h variabel med andre kommandoer i samme økt. Den resultsare vises på den lokale datamaskinen. For eksempel:

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

Avansert Fjernstyring

Windows PowerShell remote management begynner bare her., Ved hjelp av cmdletene installert med WindowsPowerShell, kan du opprette og konfigurere eksterne økter, både fra lokale og eksterne ender,lage tilpassede og begrenset økter, tillater brukere å importere kommandoer fra en ekstern økt thatactually kjøre implisitt på den eksterne økten, konfigurere sikkerhet i en ekstern økt, og muchmore.

Windows PowerShell inneholder en WSMan leverandør. Leverandøren skaper en WSMAN: stasjon som lar younavigate gjennom et hierarki av konfigureringsinnstillinger på den lokale datamaskinen og eksterne datamaskiner.,

For mer informasjon om WSMan leverandør, seeWSMan Leverandør andAbout WS-Management-Cmdlets,eller i Windows PowerShell-konsollen, skriver du inn Get-Help wsman.

For mer informasjon, se:

  • Om Ekstern FAQ
  • Registrer-PSSessionConfiguration
  • Import-PSSession

For å få hjelp med remoting feil, se about_Remote_Troubleshooting.,

Se Også:

  • about_Remote
  • about_Remote_FAQ
  • about_Remote_Requirements
  • about_Remote_Troubleshooting
  • about_PSSessions
  • about_WS-Management_Cmdlets
  • Invoke-Command
  • Import-PSSession
  • Ny-PSSession
  • Register-PSSessionConfiguration
  • WSMan Leverandør

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *