Kategorie: Powershell

Scripte rund um die Powershell

Powershell: Alle Verzeichnisse in einem Quellverzeichnis in ein ZIP Archiv packen

Beschreibung:

Immer wieder benötigt. Schnell  und einfach viele Verzeichnisse in separate ZIP Archive packen. Da ist doch die Powershell wie geschaffen dafür. Also schnell die Variablen befüllt. Die Dateien ermitteln. Prüfen ob es ein Verzeichnis ist und dann mit 7Zip das ganze über cmd in ein Archiv packen. Fertig.

Code:

Download:

Klick für Download

Powershell: Bildschirmbereich mit GetBufferContents sichern und wieder herstellen

Beschreibung:

Da ich ein Fan der Konsole bin und gerne mehr mit Powershell  erledigen möchte , habe ich mich auf die Suche gemacht, komfortable Werte abzufragen in Form eines Formulars. Klar ich kann mit Tools mit eine GUI zusammenbasteln und auf die Ereignisse reagieren. Aber dann befinde ich mich schon wieder außerhalb der Konsole. Also was tun.

Ich habe also angefangen ein Formulartool für die Shell zu erstellen. Was bis dato auch schon super funktioniert. Aber da ich auch Auswahlfelder haben möchte, bin auf das Problem gestoßen, da ich beim Einblenden der möglichen Werte, andere Feldbreiche überschreibe. Also muss ich vor dem Einblenden den Bereich, in dem ich die Werte einlebenden möchte, zwischenspeichern. Dazu habe ich die Funktion GetBackGround geschrieben die mit der Funktion GetBufferContents einen Bereich sichert.

Ich gebe als Parameter die linke obere und die rechte untere Ecke als Koordinaten an. Dann sichert mir die Funktion den Inhalt und gibt sie mir zurück.

Ich fühle mich, irgendwie wie in alte DOS Zeiten versetzt. Die ersten Programmier Erfahrungen mit Fenstertechnik unter Turbo Basic und Dos.

Mit der Funktion SetBackGround wird der gesicherte Inhalt einfach wieder an der Ursprungsposition ausgegeben. Weitere Funktionen rund um mein Powershell Formulartool für die Shell werde ich zu einem späteren Zeitpunkt hier veröffentlichen.

Funktion GetBackGround:

Parameter:

Parametername Parameterwert
intLeft Spalte der linken oberen Ecke (beginnt mit 0)
intTop Zeile der linken oberen Ecke (beginnt mit 0)
intRight Spalte der rechten unteren Ecke
intBottom Zeile der rechten unteren Ecke

Rückgabe:

Rückgabetyp Rückgabewerte
Array [0] = CursorPosition der linken oberen Ecke
[1] = Array der Daten die gesichert wurden inkl. Farbwerten

Code:

Funktion GetbackGround:

Parameter:

Parametername Parameterwert
objData Array mit Daten
[0] = CursorPosition der linken oberen Ecke
[1] = Array der Daten die gesichert wurden inkl. Farbwerten

Code:

Beispiel:

Download:

Download Button Powershell ScriptKlick für Download

Powershell: Dateien je nach Bearbeitungsdatum in ZIP Archiv überführen

Beschreibung:

Ein kleines Script welches in einem angegebenen Verzeichnis alle Dateien, die einem Filter entsprechen, in ein tägliches ZIP Archiv überführen. Berücksichtigt wird das Bearbeitungsdatum. Nach dem erfolgreichen hinzufügen zu einem Archiv wird die Original Datei gelöscht.

Entstanden ist das Script, da eine Anwendung die Logdateien von einem Programm meine Festplatte voll geschrieben haben.

Parameter:

Die Parameter werden im Script hinterlegt

Parametername Parameterwert
$strPath Pfad in dem nach den zu archivierenden Dateien gesucht werden soll
$intDays Bis wieviel Tage zum aktuellen Datum sollen die Dateien archiviert werden?
$strFilter Dateinamen Filter. (z.B. *.log)

Code:

Download:

Download Button Powershell 64x64Klick für Download