Jump to content

Fachinformatiker - Blog

  • Einträge
    36
  • Kommentare
    109
  • Aufrufe
    40.758

Mitwirkende

Powershell - Teil 2

Melde dich an, um diesem Inhalt zu folgen  

874 Aufrufe

Es gibt wohl zwei Dinge beim Skripten die gerade am Anfang sehr stiefmütterlich behandelt werden.

  1. Dokumentation
  2. Versionierung

Dies liegt vor allem daran, dass man am Anfang des Skriptens viel Spaß am Experimentieren hat und bestimmt auch viel im Code springt oder ein paar Skripte parallel schreibt. Da kommt einem am Anfang gar nicht der Gedanke, dass man ja doch recht häufig speichert, aber immer unter dem gleichen Dateinamen. Vielleicht ab und zu mal eine -test oder eine-2 dranhängt. Aber mit einer ordentlichen Versionierung hat das eher nichts zu tun.


Dokumentation/Kommentierung


Bei mir hat sich bewährt, dass ich am Anfang eines Skriptes erst einmal als Kommentar das Ziel des Skriptes definiere. Dieser kann sich ja immer wieder verändern, aber später spart man sich auch diese Arbeit, wenn man das Skript einmal in andere Hände geben möchte, denn dann gehört so ein Text einfach dazu.

Wenn ihr Funktionen schreibt, dann sollten folgende Punkte aufgeführt sein:

  • SYNOPSIS
    • Hier sollte in 1-2 Sätzen die Bestimmung der Funktion stehen
  • DESCRIPTION
    • Eine ausführlichere Beschreibung was diese Funktion macht
  • PARAMETER param1
    • Beschreibung des param1
  • PARAMETER param2
    • Beschreibung des param2
  • Notes
    • Zusätzliche Notizen
  • LINK
    • Zugehörige URLs
    • Die erste URL wird aufgerufen wenn das CDMlet Get-Help -Online <Funktionsname> aufgerufen wird
  • INPUTS
    • Typen der Datenübergabe die erlaubt sind
  • OUTPUTS
    • Typen der Datenausgabe die von dieser Funktion ausgegeben werden können

Funktionen benennen

Bei der Wahl des Funktionsnamens sollte man sich an die offizielle Nomenklatur halten. Das bedeutet, dass der Name mit einem Verb und einem Substantiv durch ein "-" getrennt aufgebaut sein sollte. Get-Verb gibt euch eine offizielle Liste der Verben und in welchem Kontext diese stehen.

Wenn ihr allerdings eine Funktion nur für euch schreibt die nur lokal eingesetzt wird, schreibt vor den Funktionsnamen "private:" oder „script:“

Versionierung

Beim Versionieren habe ich früher bei größeren Änderungen einfach den Versionszähler hochgesetzt und nebenbei eine Liste der Änderungen in einem Onenote Dokument gepflegt.

Ihr könnt natürlich auch die Änderungen in einem Textdokument oder direkt im Skript kommentieren.

Auch hier bieten die ISESteroids wieder eine sehr komfortable Lösung des Versionierens.

 

Versionskontrolle.thumb.png.b7c8c9e3ea16ce49d2c975c8d021afd8.png

Der Pfeil im Bild zeigt euch, wie ihr den Reiter der Versionierung aufrufen könnt. Auf der rechten Seite seht ihr Die File Version History. Links ein Button „Ad New Version“ und auf der rechten Seite eine Checkbox „Auto Mode“. Wenn bei Auto Mode der Haken gesetzt ist, wird automatisch eine neue Version angelegt sobald man Änderungen durchgeführt hat und darauf folgend speichert.

In dem Reiter der einzelnen Versionen seht ihr links eine Klassifikationsmöglichkeit, wie zum Beispiel Stable, Alpha Release und weitere. Über den Knopf Compare öffnet sich das Programm WinMerge und zeigt die Veränderungen zur Vorgängerversion. Hier nutze ich den Button Notes um, wie der Name schon sagt, mir Notizen zu den Versionsunterschieden zu kommentieren.

 

Falls ihr noch Anregungen, Fragen oder Hinweise habt, gerne her damit.

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