Zum Inhalt springen

PowerShell Remote


Systemer

Empfohlene Beiträge

Servus Zusammen,

 

ich hab bereits einige Skripte geschrieben, die meisten jedoch immer lokal auf den Geräten bzw. über die Aufgabenplanung ausgeführt.....

Jetzt hätte ich ein Skript, welches an mehreren Computern ausgeführt werden muss.

 

Fall 1:

ich möchte über Invoke-command an einem Remote Rechner was ausführen

$DK = New-PSSession (read-host)
Invoke-Command -Session $DK {Start-Process "C:\temp\eSetup-1209.exe"}

dabei sollte er mir das Installationsfenster am Remote Rechner öffnen, dies macht er leider jedoch nicht...... wisst ihr wie es funktioniert, dass er am Remote Rechner das Setup in einem Fenster öffnet?

 

Fall 2:

ich möchte in einem Skript mehrere Server ansprechen. Nacheinander, mit unterschiedlichen Aufgaben.
Ich habe es mit der PS-Session versucht, jedoch funktioniert diese nicht so ganz wie sie soll.....
Auf Server 45 soll bsp powershell gestartet werden und Excel geschlossen, sobald dies abgeschlossen ist soll er auf Server 44 Powershell eine andere Datei starten....

beispielsweise ca. folgend:

Enter-PSSession Server45
start-process powershell "C:\temp\PS122.ps1"
stop-service -name excel
Remove-PSSession (exit)

Enter-PSSession Server44
start-process powershell "C:\temp\NEU.ps1"
Remove-PSSession (exit)
 

Habt Ihr hierzu Ideen bzw. Lösungen?

 

Vielen Dank! 


Besten Gruß

Systemer

Link zu diesem Kommentar
Auf anderen Seiten teilen

Moin!

Ich bin Unixer, daher sind Angaben mit Vorsicht zu genießen 🙂

zu Fall 1) ich hab' mal etwas ähnliches unter Windows versucht und musste dann feststellen, dass das ohne signierte Scripte nicht funktioniert. Dann habe ich aufgegeben und es einem Kollegen aufgedrückt 🙂

zu Fall 2)
das riecht ja nach einem Script, welches nach und nach abgearbeitet wird. Zur Not musst du etwas basteln, dass, bevor der Teil mit dem Server44 beginnt, beim Server45 angefragt wird, ob er fertig ist mit seinem Job ... gegenenfalls mit 'ner kleinen Endlosschleife (mit Notausstieg nach 5 min), die das einfach abfragt und erst danach mit Server44 weitermacht.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Fall 1) geht nicht. Du kannst remote Commands ausführen, aber eine GUI bekommst du dann nicht zurückgemeldet.
Probiere die Installation mit einer .msi Datei. Das sollte funktionieren.

Fall 2)
Test deine Scripte erstmal lokal.. wenn es lokal klappt, dann sollte es auch remote kein Problem sein.
 

Link zu diesem Kommentar
Auf anderen Seiten teilen

Am 2.3.2023 um 16:42 schrieb mylurid:

Fall 1) geht nicht. Du kannst remote Commands ausführen, aber eine GUI bekommst du dann nicht zurückgemeldet.
Probiere die Installation mit einer .msi Datei. Das sollte funktionieren.

Fall 2)
Test deine Scripte erstmal lokal.. wenn es lokal klappt, dann sollte es auch remote kein Problem sein.
 

Hi,
danke dir für deine Antwort.

Funktioniert lokal, das Problem ist, dass er nicht richtig aus der Session rauskommt und versucht über die "alte" Session eine weitere aufzubauen, was eben nicht funktioniert.

 

Problem ist hier, dass ich wsl die Commands für die Session falsch nutze...

Link zu diesem Kommentar
Auf anderen Seiten teilen

1.) mit invoke command gestartete prozesse bekommen keine GUI. Invoke Command macht eine neue Usersitzung auf der Remote maschine auf und diese wird eben ohne GUI gestartet.

 

2.) wie mylurid schreibt. da du einen start process machst musst du zwischen server 45 und 44 prüfen ob der prozess auch fertig ist.

oder du startest den prozess mit -wait und fängst dann hinterher den ExitCode ab und schaust ob der prozess fehlerfrei gelaufen ist.

z.b. so:

# ExitCode is available when using -Wait...
Write-Host "Starting Notepad with -Wait - return code will be available"
$process = (Start-Process -FilePath "notepad.exe" -PassThru -Wait)
Write-Host "Process finished with return code: "
$process.ExitCode

 

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...