Richtlinien für Variablen
Bei der Erstellung eines Befehls oder eines Datenquelltyps müssen Sie die Richtlinien für PowerShell und Perl-Variablen in OnCommand Workflow Automation (WFA) kennen.
PowerShell Variablen
Richtlinien | Beispiel |
---|---|
Für Skript-Eingabeparameter:
|
|
Für interne Skriptvariablen:
|
|
Für Funktionen:
|
|
Bei Variablennamen wird die Groß-/Kleinschreibung nicht beachtet. Um die Lesbarkeit zu verbessern, sollten Sie jedoch für denselben Namen keine andere Großschreibung verwenden. |
|
Variablennamen sollten in einfachem Englisch sein und sich auf die Funktionalität des Skripts beziehen. |
Nutzung |
Erklären Sie den Datentyp für jede Variable explizit. |
[String]Name [Int]Größe |
Verwenden Sie keine Sonderzeichen (! @ # & % , .) und Leerzeichen. |
Keine |
Verwenden Sie keine PowerShell reservierten Schlüsselwörter. |
Keine |
Gruppieren Sie die Eingabeparameter, indem Sie zunächst die obligatorischen Parameter, gefolgt von den optionalen Parametern platzieren. |
param( [parameter(Mandatory=$true)] [string]$Type, [parameter(Mandatory=$true)] [string]$Ip, [parameter(Mandatory=$false)] [string]$VolumeName ) |
Kommentieren Sie alle Eingabevariablen mit Hilfe von HelpMessage-Anmerkungen mit einer sinnvollen Hilfe-Nachricht. |
[parameter(Mandatory=$false,HelpMessage="LUN to map")] [string]$LUNName |
Verwenden Sie „ |
Keine |
Verwenden Sie die Anmerkung ValidateSet in Fällen, in denen das Argument auflistet. Damit wird automatisch der Datentyp „Enum“ für den Parameter angezeigt. |
[parameter(Mandatory=$false,HelpMessage="Volume state")] [ValidateSet("online","offline","restricted")] [string]$State |
Fügen Sie einem Parameter, der mit „ |
Der Befehl „ [parameter(Mandatory=$false,HelpMessage="Volume increment size in MB")] [Alias("AutosizeIncrementSize_Capacity")] [int]$AutosizeIncrementSize |
Fügen Sie einem Parameter, der mit „ |
param ( [parameter(Mandatory=$false, HelpMessage="In order to create an Active Directory machine account for the CIFS server or setup CIFS service for Storage Virtual Machine, you must supply the password of a Windows account with sufficient privileges")] [Alias("Pwd_Password")] [string]$ADAdminPassword ) |
Perl-Variablen
Richtlinien | Beispiel |
---|---|
Für Skript-Eingabeparameter:
|
|
Verwenden Sie keine Abkürzungen für interne Skriptvariablen. |
|
Verwenden Sie keine Abkürzungen für Funktionen. |
|
Bei Variablennamen wird die Groß-/Kleinschreibung beachtet. Um die Lesbarkeit zu verbessern, sollten Sie für denselben Namen keine andere Groß-/Kleinschreibung verwenden. |
|
Variablennamen sollten in einfachem Englisch sein und sich auf die Funktionalität des Skripts beziehen. |
Nutzung |
Gruppieren Sie die Eingabeparameter, indem Sie zuerst die obligatorischen Parameter, gefolgt von den optionalen Parametern platzieren. |
Keine |
In GetOptions Funktion, deklarieren Sie explizit den Datentyp jeder Variable für Eingabeparameter. |
GetOptions( "Name=s"=>\$Name, "Size=i"=>\$Size ) |
Verwenden Sie „ |
Keine |
Perl schließt nicht das ein |
if (defined$SpaceGuarantee&&!($SpaceGuaranteeeq'none' |
$SpaceGuaranteeeq'volume' |
|
$SpaceGuaranteeeq'file')) { die'Illegal SpaceGuarantee argument: \''.$SpaceGuarantee.'\''; } ---- |
|
Alle Perl WFA Befehle müssen das Pragma „ |
use strict; # the above is equivalent to use strictvars; use strictsubs; use strictrefs; |
Alle Perl WFA Befehle müssen die folgenden Perl Module verwenden:
|
use Getopt::Long; use NaServer; use WFAUtil; |