PowerShell

    OpenSSH unter Windows 10 und Server 2016 aktivieren, PowerShell-Remoting nutzen

    OpenSSH als optionales Feature in Windows 10 1709 installierenMit der Por­tierung von Power­Shell Core auf Linux und MacOS stellt Microsoft für das Remoting auf SSH um. Windows 10 1709 enthält bereits Client und Server von OpenSSH als optionales Feature. Der SSH-Server ist nach seiner Akti­vierung jedoch nicht einsatz­bereit und muss erst manuell konfi­guriert werden.

    Sonderzeichen (Quote, Dollar) in PowerShell maskieren (escape)

    Sonderzeichen in PowerShellPowerShell kennt wie prak­tisch jede Pro­grammier­sprache reser­vierte Zeichen, die bei­spiels­weise Vari­ablen mar­kieren oder als Opera­toren dienen. Möchte man sie in Zeichen­ketten ver­wenden, dann muss man sie je nach Kontext maskieren. Kompli­ziert wird es, wenn zu­sätzlich RegEx oder AD-Ab­fragen ins Spiel kommen.

    PowerShell Core 6 erscheint als Release Candidate, RTM im Januar

    Setup für PowerShell Core 6 RCDie Cross-Plattform-Version von PowerShell, die auch unter Windows zum Stan­dard werden soll, kommt als Version 6.0 voraus­sichtlich im Januar. Für künftige Releases plant Micro­soft kurze Update-Inter­valle, deren Support dem Modern Lifecycle unter­liegt. Anwender sind somit gehalten, stets aktuelle Versionen zu nutzen.

    Group-Object: Daten nach Eigenschaften gruppieren mit PowerShell

    Daten gruppieren in PowerShellSQL kann bekannt­lich mit dem Befehl GROUP BY das Ergebnis einer Ab­frage nach den Wer­ten in einer oder mehreren Spalten grup­pieren. Aber auch Power­Shell ist dazu in der Lage, wenn man an Group-Object tabel­larische Daten über­gibt, wie sie von vielen Cmdlets erzeugt werden.

    Shadow Groups im Active Directory verwalten mit PowerShell

    Benutzerkonten zwischen Konten und Gruppen synchronisierenShadows Groups im Active Directory stehen für ein Konzept, bei dem man für OUs gleich­namige Sicherheits­gruppen anlegt, welche die gleichen User ent­halten wie die ent­sprechende OU. Power­Shell kann die zusammen­gehörigen OUs und Gruppen syn­chron halten, indem man damit User aus der Gruppe ent­fernt oder ihr hinzu­fügt.

    Fehlerbehandlung in PowerShell: ErrorAction, try, catch, finally

    Fehlermeldung in PowerShellEntwickler sollten sicher­stellen, dass Scripts beim Auf­treten von Fehlern nicht ab­rupt ab­brechen, sondern kon­trolliert enden. Benutzer­freund­licher Code vers­chont zudem User vor tech­nischen Fehler­meldungen. PowerShell bietet die Mittel für ein differen­ziertes Error-Handling.

    Ps1 To Exe: PowerShell- und VBS-Scripts zu .exe-Dateien kompilieren

    Teaser für CompilerWenn man ein Script nicht im Quell­code weiter­geben möchte, dann bietet sich an, dieses in eine aus­führ­bare .exe-Datei umzu­wandeln. Zwei Freeware-Tools von Fatih Kodak können diese Auf­gabe erle­digen, wobei jeweils eines für PowerShell und Visual Basic Script zuständig ist.

    Zahlen, Datums- und Zeitangaben sowie Währungen formatieren mit Formatoperator -f in PowerShell

    Datum und Zahlen formatierenWenn ein Kom­mando eine Kombi­nation aus Zeichen­ketten, num­merischen Werten und Varia­blen aus­geben soll, dann kann sie der Format­operator "-f" diese fast beliebig anpassen. Besonders flexibel zeigt er sich bei Datums­angaben oder Zahlen. Gleich­zeitig erhöht er die Les­bar­keit des Codes.

    Verknüpfte GPOs und OUs finden mit PowerShell

    GPO-Verknüpfungen in der GruppenrichtlinienverwaltungBei einer großen Zahl an OUs und GPOs ist nicht leicht zu über­blicken, welche GPOs mit welchen OUs ver­knüpft sind. In Power­Shell lässt sich das mit relativ geringem Aufwand heraus­finden. Dabei kann man wahl­weise die OUs nach ver­linkten GPOs oder GPOs nach OUs filtern, mit denen sie ver­bunden sind.

    RegEx in PowerShell: Treffer in Variablen speichern mit Named Groups

    Reguläre Ausdrücke (RegEx) in PowerShellPowerShell erlaubt den Einsatz von regulären Ausdrücken in verschiedenen Kontexten, unter anderem mit den Operatoren match und replace. Bei langen Ausdrücken kann es hilfreich sein, den Inhalt von Gruppen in Variablen mit einem sprechenden Namen zu speichern.

    Seiten