Category Archives: Powershell

Script: Hash-Wert einer Datei ermitteln [PowerShell]

Hallo,

hier wieder ein kleiner sporadischer Beitrag meiner Serie zur PowerShell: Wie kann man den Hash-Wert einer Datei via PowerShell ermitteln.

Doch warum braucht man das überhaupt? In erster Linie um vertrauen zu schaffen, dass eine Datei beispielsweise wirklich von der Quelle in der Form stammt, wie sie dort abgelegt wurde.

Denn wenn sich der Code einer Datei ändert, so ändert sich auch der generierende Hash-Wert. Sage ich dir, die Datei die ich erstellt habe hat den Hash-Wert X und du lädst die Datei herunter und erhälst den Wert Y, dann weißt du diese Datei ist nicht die, die ich erstellt habe.
Daran kann man Beispielsweise einen Manipulationsversuch erkennen oder dass die Daten nicht vollständig übertragen wurden. Doch genug der Theorie, nun geht es an die cmdlets.

Default wird der Hash mit dem SHA256-Algorithmus gebildet:

Ergebnis:
gf-ps-cmdlet

Mittels des Parameter -Algorithm kann man zusätzlich einen der folgenden Algorithmen auswählen:

MACTripleDES
MD5
RIPEMD160
SHA1
SHA256
SHA384
SHA512

In dem Sinne: Viel Erfolg beim Hashen und keine Macht den Drogen.

Script: Alle Datei-Attribute anzeigen lassen [Powershell]

Hallo,

da ich gerade lerne die Powershell zu verstehen und versuche sie produktiv zu nutzen. Da dachte ich mir ich zeige in sporadischen Blogbeiträgen meine Verständnis-Lücken auf.
Zusätzlich möchte ich ab und an Snippets oder ganze Scripte hier vorstellen.

Es ist nützlich sich in der Powershell bestimmte Objekt-Attribute anzeigen zulassen. Beispielsweise das Erstellungsdatum einer Datei.
Dies macht man mit dem Befehl:

Wichtig ist hierbei der select-Befehl hinter der Pipeline.

Dies war nun recht simpel, doch was ist wenn wir ein Objekt-Attribut suchen aber den richtigen Namen nicht kennen? Ja klar, man kann diverse Suchmaschinen anwerfen, aber die Powershell bietet auch dafür eine Lösung!
Nämlich wenn man das Wildcard (*) selected, werden einem alle verfügbaren Objekt-Attribute angezeigt:

Die Ausgabe sieht dann folgendermaßen aus:

Somit wissen wir nun, welche Attribute wir alles abfragen und ansprechen können.

 

Ich hoffe ich konnte dem ein oder anderen von euch helfen.

In dem Sinne: frohes kraftmuscheln.

Script: Start and Stop multiple Hyper-V Virtual Machines [Powershell]

Hallo,

in meinem letzten Blogpost, habe ich gezeigt wie man einen einfachen VM-Launcher für Hyper-V via Powershell baut.
Nun fragte ich mich, was ist wenn ich mehrere VMs starten oder stoppen möchte, ja ich kann verschiedene Launcher erstellen oder man baut sich einen kurzen Workflow, dieser kann zum Beispiel so aussehen:

Im Umkehrschluss sieht der Stopper nun so aus:

Die VM`s werden nun der Reihe nach gestartet, praktisch ist dies zum Beispiel für eine komplette Testumgebung in der erst der Domain-Controller dann der Webserver und dann der Client gestartet werden soll.

Hier wird aber nicht automatisch auf die VM verbunden, dies kann man dann mittels dem Befehl:

bewerkstelligen.
Wenn man den Output des Powershell-Fensters nicht benötigen sollte, so kann man das wieder mittels dem Aufrufparameter:  WindowStyle Hidden erreichen.

Ich hoffe es hat euch geholfen.

In dem Sinne: Fröhliches starten und stoppen 🙂

Script: Hyper-V VM-Launcher [Powershell]

Hallo,

vor kurzem wollte ich nur meine VM starten und nicht extra den Hyper-V Manager starten, um dort die VM zu starten und anschließend mich mit der Console (vmconnect.exe) zu verbinden.

Ich finde das sind zu viele Klicks für eine im Grunde simple Aufgabe.

Über die Powershell (ein Hoch auf die Kraftmuschel) kann man via Start-VM direkt die Virtuelle Maschine starten. Im Anschluss können wir die VM via vmconnect aufrufen. Wird das Anzeigefenster geschlossen, dann können wir mit Stop-VM die Virtuelle Maschine beenden.

Ein einfaches Script sieht so aus (Meine VM heißt LinuxBox und wird lokal ausgeführt):

Wenn man dieses Powershell-Script nun ausführt, funktioniert das zwar ganz gut, aber leider bleibt im Hintergrund das Powershell-Fenster während der gesamten Verbindung zur VM bestehen. Wenn wir uns ein Shortcut mit bestimmten Parametern anlegen, können wir das Powershell-Fenster via -WindowStyle Hidden verstecken.
So würde dies nun aussehen (Mein Powershell-Script liegt auf D:\Coding\Powershell\):

Ein Dank geht an Jeff Wouters (Sein Blog-Beitrag zeigte mir, wie ich das Script versteckt ausführen kann).

In dem Sinne: Happy Launching.

1 2 3 4