2016-11-03 5 views
1

Wie schreibe ich ein Skript, das sich von der Festplatte entfernt. Lassen Sie uns folgende Beispiel annehmen, was ich erreichen möchte:Skript, das sich selbst entfernt

> dir 
script.ps1 
> powershell script.ps1 
> dir # <-- file do not exists 
> 

ich mit Power-Shell nicht vertraut bin, aber ich nehme an, es wie folgt aussehen sollte:

  1. Skript ein Verfahren erzeugt, das
  2. wartet
  3. Skriptes ist es Leben
  4. Prozess die script.ps1 Datei von HD
  5. Prozess selbst
tötet entfernt

Das Problem ist, dass ich nicht weiß, wie man dynamisch einen Prozess erstellt, der darauf wartet, dass Skript seinen Job beendet und dann die Datei entfernt. Schätze deine Hilfe.

Antwort

4

Sie überschätzen dies. Ein PowerShell-Skript ist während der Ausführung nicht gesperrt, und alle gestarteten Befehle sind untergeordnete Elemente des PowerShell-Prozesses. Ein Skript ist frei einfach selbst in den Kopf zu schießen:

Remove-Item $MyInvocation.MyCommand.Source 

In der Tat, Sie einen Befehl danach stellen können und sehen, dass Powershell immer noch ausgeführt werden, da das Skript bereits geladen wurde.

+0

So einfach? Kann das nicht glauben! Ich werde es am Montag überprüfen und die Antwort auswählen (ich habe keine Fenster auf meinem PC). Vielen Dank! – nosbor

Verwandte Themen