Jump to content

Fachinformatiker - Blog

  • Einträge
    36
  • Kommentare
    109
  • Aufrufe
    40.761

Mitwirkende

Powershell - Allgemeines

Melde dich an, um diesem Inhalt zu folgen  

1.141 Aufrufe

In diesem Beitrag soll es um die Powershell im Allgemeinen gehen und sich an Benutzer mit grundlegenden Skriptingkenntnissen wenden.

Meine Erfahrungen im Umgang und dem ein oder anderen Tool.

Ich bin ein Freund der Powershell geworden, da man mit dieser Scripting Engine viele sich wiederholende Aufgaben schnell und vor allem dann auch fehlerfrei immer wieder erledigen kann. Sei es ein Passwort nach bestimmten Kriterien automatisiert erstellen, dem AD Account hinzufügen, das Flag für "Bei der nächsten Anmeldung Passwort ändern" setzen und einen vorgefertigten Passwortbrief ausdrucken. Oder Gruppenmitgliedschaften zwischen zwei AD Accounts übertragen. Alles was über viel Klickerei zu erreichen ist, kann man durch die Powershell eleganter lösen.

Im Grunde genommen bin ich nun so weit, dass ich alles, was ich auf Dateiebene oder im Bereich AD oder Exchange mehr als zwei Mal mache, versuche in der Powershell zu lösen. Im besten Fall wiederhole ich irgendwann noch einmal die Tätigkeit, oder führe eine ähnliche aus und muss das Skript nur ein wenig anpassen, oder im schlechtesten Fall habe ich wieder ein wenig mehr Übung im Skripten und das hilft natürlich bei den kommenden Aufgaben.

 

Erstmal ein paar allgemeine Überlegungen

 

ISE - Integrated Scripting Environment oder nicht ISE (Konsole) - das ist hier die Frage

 

Es gibt für mich keinen Grund der Konsole den Vorzug zu geben.

Hier ein paar Gründe:

  • Kopieren und Einfügen
    • Dies ist in der Konsole nur mit der Maus und nicht mit Tastaturbefehlen möglich
    • Bei mehrzeiligen Befehlen werden der Prompt und der Zeilenumbruch mit kopiert
  • Ich kann durch das Kopieren und Einfügen der gleichen Zeile untereinander mit anschließenden editieren der einzelnen Zeilen mehrere ähnliche Syntax erstellen und dann einzeln testen und somit gut experimentieren
  • Wenn ich bemerke, dass eine lange gepipte Verkettung von Befehlen zu komplex wird, kann ich diese recht einfach wieder zerpflücken und in z.B. eine Funktion wandeln
  • IntelliSense
    • Autovervollständigen mit einem kleinen Fenster neben dem Cursor
    • In der Konsole nur CMDlets und Parameter mit Tab durchschaltbar
  • Einfärbung der Codeelemente erhöht die Übersichtlichkeit
    • Tippfehler werden schneller erkannt
  • Befehls Add-on Reiter
    • Ermöglicht schnellere und einfache Erstellung eines CMDlets mit den benötigten Parametern

 

Add-Ons

Ein sehr schönes CMDlet ist für die Arbeit im AD ist NTFSAccess.

https://blogs.technet.microsoft.com/heyscriptingguy/2014/11/22/weekend-scripter-use-powershell-to-get-add-and-remove-ntfs-permissions/

ist von The Scripting Guys

Bei den Downloads die man aus dem Internet lädt, müsst ihr daran denken, vor dem kopieren, ausführen etc. die Eigenschaften des Downloads aufzurufen und ganz unten im allgemeinen Reiter bei dem Punkt Sicherheit den Button "Zulassen" zu drücken.

Ein besonderes Bonbon sind die Powershell ISESteroids von Powertheshell.com

Eins vorweg, die ISESteroids sind nicht kostenlos. Preise findet ihr auf Dr. Tobias Weltners Webseite http://www.powertheshell.com/isesteroids2-2/ordering-isesteroids/

Dr. Tobias Weltner ist ein Experte aus dem Team von IT-Visions (Dr. Holger Schwichtenberg). Dr, Schwichtenberg ist durch zahlreiche Publikationen, auch rund um die Powershell, bekannt. Es lohnt sich auf jeden Fall eins seiner Bücher zur Hand zu haben, sobald man mit der Powershell anfängt zu Skripten.

Aber nun zurück zu den Steroiden.

Um diese immer beim Start zu laden, müssen diese in die Profildatei geladen werden. Diese findet ihr unter dem Userverzeichnis\Dokumente\WindowsPowershell. Hier ändere ich noch die Farbe der Fehleranzeige von dem Blau in Weiß, da dies generell besser lesbar ist. Das macht ihr mit dem Eintrag (get-host).PrivateData.errorbackgroundcolor = "White"

Oder, sofern ihr die Steroids mit start-steroids schon geladen habt über die neue Leiste aufrufen.

Profile.thumb.png.fbd298a5aa4cff37d87b3b29f3355f2e.png

Was die Steroids für mich mittlerweile unverzichtbar machen sind

  • Gaaaanz wichtig Eine Versionierung
  • Einen Simulationsmode - hier muss man nicht nach jeder ausführbaren Zeile ein -Whatif kommen
  • Die Möglichkeit aus dem Skript eine eigenständig laufende EXE zu machen
  • Der Variablen Explorer - Dieser zeigt alle verfügbaren Variablen und deren Inhalt an
  • Win Merge File Compare - Ist im Zusammenarbeit mit der Versioncontrol einfach gut um Unterschiede in den Skripten zu finden
  • PSShaper - Zeigt was in dem Skript nicht den "best practice" entspricht

 

Schon während des Skriptens erscheinen zahlreiche Hinweise, wenn man dabei ist einen Bock zu schießen und geben einem Möglichkeiten vor es zu verbessern. Diese Möglichkeiten werden dann bei Wunsch auch direkt umgesetzt,

Wenn man eine Klammer, egal welcher Art auch immer öffnet, erscheint gleich auch das entsprechende Gegenstück. Wem ging es noch nie so, dass man später die Klammern zählt und sucht ;-)

Ein paar Zeilen Code geschrieben und dann gedacht...das wäre auch eine gute Funktion. Hier ist nach dem Markieren des Codes mit einem Rechtsklick sofort alles erledigt sobald man sich für einen Namen für die Funktion entschieden hat und welche Variablen als Parameter übergeben werden sollen.

Vorher

Zeilen_Code.png.ce0fb9a7b43f4e9e9b21dbf79875c3dd.png

Nachher

Zeilen_Code_function.png.8d12c98704ab5e3c27e50c32b82e69a9.png

Durch einen weiteren Klick auf einem Knopf wird diese Funktion in ein Modul geschrieben oder einem Modul hinzugefügt.

Dies nur mal als einen kleinen Appetizer. In den kommenden Blogeinträgen kommt zu den Steroids bestimmt noch mehr.


 

Melde dich an, um diesem Inhalt zu folgen  


0 Kommentare


Empfohlene Kommentare

Keine Kommentare vorhanden

Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde dich hier an.

Jetzt anmelden
  • Blogkommentare

    • Einfach zu lesen und zu verstehen, hat mir geholfen, danke
    • Das Beispiel bei Raid 5, in dem du die Rechnung als Beispiel erstellst, finde ich etwas unglücklich. Ich würde mich hier eher mit den 0 und 1 und der errechnung der geraden / ungeraden Ergebnisbits entscheiden. Auch sind es nicht oft 5 Festplatten bei einem Raid 5. Eher mehr. Zu Raid 5 und 6, es gilt eigentlich, dass man die Paritybits auch wahllos verteilen kann. Es muss keine dedizierte Platte sein. Das zweite Paritybit kann auch diagonal gestripes über ein Array verteilt werden. Siehe NetApp   Viele Grüße   z.B. Jens Mander
    • 1. Bild ist raus. Zum Rest: Empfinde ich als nicht wichtig genug für einen Blog der die Grundlagen vermitteln soll.  
    • Erstens: Copyright ist dir unbekannt? Auch für einen Blogbeitrag darf man nicht einfach ein Bild aus dem Internet verwenden. Zweitens: der von dir verlinkte Controller dürfte nicht viel schneller sein als ein Software-Raid. Mehr dazu unter Punkt 4. Drittens: Ein echtes Hardware Raid gewinnt seine Leistung unter anderem auch dadurch, dass der Controller einen eigenen Cache besitzt. Warum schreibst du nichts darüber? Was ist mit einem BBU und warum sollte dieses Bauteil zwingend bei einem Raid dabei sein? Viertens: der von dir im Bild gezeigte Controller ist ein einfacher SATA-Controller aus alten Tagen (es ist ein PCI-X Controller, das war mal state of the art als ich zum ersten Mal intensiver mit IT in Verbindung kam), der ein RAID nur über die Treiber für die Karte erstellen kann, es also effektiv ein Controller für ein SOFTWARE-RAID ist. Siehe hier: https://www.semiconductorstore.com/cart/pc/viewPrd.asp?idproduct=42868
    • Ich kann die Infos nochmal raussuchen aber eigentlich ist es klar. bei RAID 6 werden 2 verschiedene Prüfsummen gebildet P und Q die auf die Platten verteilt werden. Unabhängig davon ob Q nun komplexer zu ermitteln ist als P braucht das mehr Rechenzeit. Das passiert zwar aufm Controller aber der kann auch nur n Operationen pro Sekunde. ob es belastbare Benchmarks gibt weiß ich nicht. Das gleiche gilt in ähnlicher Form fürs Rebuild und damit auch für den Betrieb im "degraded" Zustand. Je mehr Festplatten um so mehr Operationen pro Prüfsumme müssen durchgeführt werden. Auch ein XOR braucht Zeit, auch wenn es wenig ist.
    • 1. Danke, ich habe eine Zeile hinzugefügt die darauf hinweist das es noch mehr RAIDs gibt. 2. Ich hab ein wenig gesucht, aber zu dieser Aussage konnte ich leider auf die Schnelle keine Informationen finden, könntest du mir sagen wo du diese Info her hast? 3. Das die Performance während eines Ausfalls sinkt hatte ich unter RAID 5 erwähnt. Unter RAID 0 ist auch nochmal erwähnt dass bei mehr Festplatten die Ausfallrate höher ist. Beides könnte man natürlich in einen allgemeineren Bereich nehmen, das ist wahr. Was mehrere Platten in RAID 5/6 betrifft und das bei mehr Platten die Zeit für den Rebuild steigt konnte ich leider auch nicht verifizieren - nur das die Zeit mit der Größe der Platte logischerweise steigt (1TB hat eine kürzere Rebuild-Zeit als eine 2TB-Platte).
    • Mir fehlen hier noch typische Einsatzgebiete der jeweiligen RAID-Level, ein Verweis auf exotischere RAIDs. Es klingt auch ein wenig so als wäre RAID 6 ne total tolle Idee, allerdings erkauft man die Datensicherheit mit Performanceeinbußen gegenüber anderen Varianten. Es ist auch keine gute Idee viele Festplatten in ein RAID 5 oder 6 zu stopfen. Zum einen steigt die Wahrscheinlichkeit das mehrere Festplatten ausfallen und zum anderen steigt die Zeit für den Rebuild und die Performance sinkt während des Ausfalls.
    • Zu diesem Thema habe ich mit Patrick in einem fast zweistündigen Interview gesprochen. Wer mehr über die Arbeit eines UX-Experten erfahren möchte, kann gerne reinhören: Patrick Ziegler über User Experience (UX) und Usability. Und über Feedback freuen wir uns natürlich auch sehr!
    • https://www.ebay-kleinanzeigen.de/s-anzeige/halo-suche-jop-in-ein-anwalz-kanslei/716905036-105-4268
    • Ist doch ein Fake oder? https://www.ebay-kleinanzeigen.de/s-anzeige/ferkaufe-fiat-multipler-guter-zu-schtant/716565560-216-4268
       
  • Blogstatistik

    • Blogs insgesamt
      1
    • Einträge insgesamt
      32

Fachinformatiker.de, 2018 SE Internet Services

fidelogo_small.png

if_icon-6-mail-envelope-closed_314900.pnSchicken Sie uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App


Get it on Google Play

Kontakt

Hier werben?
Oder senden Sie eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×

Wichtige Information

Fachinformatiker.de verwendet Cookies. Mehr dazu in unserer Datenschutzerklärung