変数のガイドライン
コマンドまたはデータソースの種類を作成するときは、 OnCommand Workflow Automation ( WFA )で PowerShell 変数と Perl 変数のガイドラインに注意する必要があります。
PowerShell の変数
ガイドライン | 例 |
---|---|
スクリプト入力パラメータの場合:
|
「 $VolumeName 」 $AutoDeleteOptions' 「 $Size 」 |
スクリプト内部変数の場合:
|
「 $newVolume 」 「 $qtreeName 」 「 $TIME 」 |
関数の場合:
|
「 GetVolumeSize 」 |
変数名では大文字と小文字は区別されません。ただし、読みやすくするために、同じ名前に異なる大文字と小文字を使用しないでください。 |
「 $VARIABLE 」は「 $VARIABLE 」と同じです |
変数名は、プレーン英語で記述され、スクリプトの機能に関連した名前にする必要があります。 |
「 $a`. 」ではなく「 $name` 」を使用してください |
各変数のデータ型を明示的に宣言します。 |
[string] name [int] サイズ |
特殊文字 (! @ # & % 、 . )とスペース。 |
なし |
PowerShell の予約キーワードは使用しないでください。 |
なし |
入力パラメータをグループ化するには、まず必須パラメータを配置し、続けてオプションパラメータを配置します。 |
param( [parameter(Mandatory=$true)] [string]$Type, [parameter(Mandatory=$true)] [string]$Ip, [parameter(Mandatory=$false)] [string]$VolumeName ) |
すべての入力変数には 'HelpMessage' 注釈と意味のあるヘルプ・メッセージを使用してコメントを付けます |
[parameter(Mandatory=$false,HelpMessage="LUN to map")] [string]$LUNName |
変数名として「ファイラー」を使用しないでください。代わりに「アレイ」を使用してください。 |
なし |
引数が列挙値を取得する場合は 'ValidateSet' 注釈を使用しますこれにより、パラメータの Enum データ型に自動的に変換されます。 |
[parameter(Mandatory=$false,HelpMessage="Volume state")] [ValidateSet("online","offline","restricted")] [string]$State |
パラメータの末尾に「 _Capacity 」が付いたエイリアスを追加して、パラメータが容量タイプであることを示します。 |
「 Create Volume 」コマンドでは、次のようにエイリアスを使用します。 [parameter(Mandatory=$false,HelpMessage="Volume increment size in MB")] [Alias("AutosizeIncrementSize_Capacity")] [int]$AutosizeIncrementSize |
パラメータがパスワードタイプであることを示すために、エイリアスを "_Password" で終わるパラメータに追加します。 |
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 変数
ガイドライン | 例 |
---|---|
スクリプト入力パラメータの場合:
|
「 $VolumeName 」 $AutoDeleteOptions' 「 $Size 」 |
スクリプトの内部変数には省略形を使用しないでください。 |
$new_volume 「 $qtree_name 」のようになります 「 $TIME 」 |
関数には省略形を使用しないでください。 |
'get_volume_size |
変数名では大文字と小文字が区別されます。読みやすくするために、同じ名前に異なる大文字と小文字を使用しないでください。 |
「 $VARIABLE 」は「 $VARIABLE 」と同じではありません |
変数名は、プレーン英語で記述され、スクリプトの機能に関連した名前にする必要があります。 |
「 $a`. 」ではなく「 $name` 」を使用してください |
入力パラメータをグループ化するには、まず必須パラメータを配置し、続けてオプションパラメータを配置します。 |
なし |
GetOptions 関数で、入力パラメータの各変数のデータ型を明示的に宣言します。 |
GetOptions( "Name=s"=>\$Name, "Size=i"=>\$Size ) |
変数名として「ファイラー」を使用しないでください。代わりに「アレイ」を使用してください。 |
なし |
Perl には ' 列挙値の 'ValidateSet' 注釈は含まれません引数が列挙値を取得する場合は ' 明示的な if 文を使用します |
if (defined$SpaceGuarantee&&!($SpaceGuaranteeeq'none' |
$SpaceGuaranteeeq'volume' |
|
$SpaceGuaranteeeq'file')) { die'Illegal SpaceGuarantee argument: \''.$SpaceGuarantee.'\''; } ---- |
|
すべての Perl WFA コマンドでは、変数、参照、サブルーチンに安全でない構成要素を使用しないようにするために、 "strict" プラグマを使用する必要があります。 |
use strict; # the above is equivalent to use strictvars; use strictsubs; use strictrefs; |
すべての Perl WFA コマンドでは、次の Perl モジュールを使用する必要があります。
|
use Getopt::Long; use NaServer; use WFAUtil; |