Anfänge Informatik

Das Hobby, das ich zum Beruf machte. Bestimmt nicht das erste und älteste Hobby von mir, jedoch das, welches mich am meisten geprägt hat.
Computer faszinierten mich schon von klein auf. Lange Zeit hauptsächlich Hardware und Gaming, inzwischen hat sich der Bereich Gaming etwas in den Hintergrund gestellt und hat dem Bereich Systemtechnik mehr Raum gegeben. Vor allem das vereinfachen oder automatisieren von sicher wiederholenden Abläufen setze ich zu Hause sowie am Arbeitsplatz gerne um.
Da ich am Arbeitsplatz vorrangig Windows Servern (2003 bis 2012R2) administriere, benutze ich meistens die Scriptsprache Powershell. Aus diesem Grund werde ich hier in erster Linie solche Scripts bzw. Ausschnitte daraus vorstellen.

Rename Files

Ursprünglich als Test gedacht, habe ich es zum Umbenennen meiner Mediensammlung eingesetzt. Ein Script zum Auslesen und die Daten in eine CSV-Datei schreiben, ein Script zum Einlesen der geänderten CSV-Datei und umbenennen der Dateien. Dazwischen Excel zur Aufbereitung der Daten. Mit grosser Wahrscheinlichkeit wäre es noch einfacher, schöner und auch effizienter möglich gewesen.
Dateinamen auslesen und aufbereiten

Zeile 4: Es werden alle Dateien (Ordner werden ignoriert) rekursiv aus dem Verzeichnis ausgelesen, das in Zeile 1 gesetzt wurde.
Zeile 15-17: Der Dateinamen wird von der Endung befreit und bei dem Zeichensatz ” – ” getrennt. Die Teilstücke werden im Array $NameParts gespeichert und von überflüssigen Leerzeichen befreit.
Zeile 21-28: Der Array $NameParts wird ausgelesen und in die Eigenschaften der Variable $datacombo geschrieben. Mit Invoke-Expression kann ein Befehl in einer Variable ausgeführt werden, somit besteht die Möglichkeit ein Befehl in Laufzeit zusammen zu setzen.

 

Dateien umbenennen

Zeile 3: Um allfälligen Codierungsfehlern aus dem Weg zu gehen, wird der Inhalt der Datei ausgelesen und als Unicode in eine temporäre Datei geschrieben.

Create Homefolder

Ein einfaches Script zum Erstellen von Homefoldern mit den entsprechenden Rechten für die Folder Redirection (User als Owner). Anstatt es eigenständig zu nutzen, kann es auch in ein Script zur Benutzererstellung implementiert werden.
Zeile 4: Hier wird die Quelle der Benutzernamen (SamAccountName) angegeben, in diesem Fall ein Import einer CSV-Datei.
Zeile 9-10: Überprüfung ob bereits ein Ordner mit dem Namen vorhanden ist.

Delete Domain Users

Am Arbeitsplatz wurden beim Entfernen von Domänen Benutzern oft nur die AD Accounts gelöscht. Die Mailkonten werden so zwar mitgelöscht, die Benutzerordner (Profil und Home) jedoch nicht. So fielen je länger je mehr Daten an, die zu keinem Benutzer mehr gehörten. Aus diesem Grund entstand das Script, das alle AD Accounts in einer OU löscht und auch die Benutzerordner berücksichtigt.
Da die Ordnerberechtigungen nicht immer ein direktes Löschen zuliessen, setzt das Script vor dem Löschen bei allen Ordnern den Owner auf die Lokale Administratorgruppe und fügt diese mit Full Control den Berechtigungen hinzu. Für das Anpassen der Berechtigungen kommt das Programm SetACL zum Einsatz. Als weiteres kommt ActiveRoles Management Shell for Active Directory von Quest zum Einsatz.

In den Zeilen mit einem Aufruf des Programms SetACL muss jeweils der Pfad und die Benutzergruppe angepasst werden.
Profil und Profil.V2 da wir lange Zeit eine gemischte Umgebung mit Windows XP und Windows 7 hatten.

Anfänge Informatik

Das Hobby, das ich zum Beruf machte. Bestimmt nicht das erste und älteste Hobby von mir, jedoch das, welches mich am meisten geprägt hat.
Computer faszinierten mich schon von klein auf. Lange Zeit hauptsächlich Hardware und Gaming, inzwischen hat sich der Bereich Gaming etwas in den Hintergrund gestellt und hat dem Bereich Systemtechnik mehr Raum gegeben. Vor allem das vereinfachen oder automatisieren von sicher wiederholenden Abläufen setze ich zu Hause sowie am Arbeitsplatz gerne um.
Da ich am Arbeitsplatz vorrangig Windows Servern (2003 bis 2012R2) administriere, benutze ich meistens die Scriptsprache Powershell. Aus diesem Grund werde ich hier in erster Linie solche Scripts bzw. Ausschnitte daraus vorstellen.