0

テキストを出力するだけの別のコマンドラインツールを置き換えるバイナリpowershellモジュールを作成しています。

PowerShell 動詞ガイド (例: Add-MyModuleUser -UserName "My Username") に従うコマンドがいくつかありますが、これらのオブジェクト応答を取得し、次の形式で入力を受け入れる、置き換えているツールのようにフォーマットするオーバーロードされたコマンドも必要です。 :

myModule addUserName "My Username"

私の本能は へInvoke-MyModuleのエイリアスで呼び出されるコマンドを持っていると言っているmyModuleので、元のツールのようにその出力をInvoke-MyModule addUserName "My Username"呼び出しAdd-MyModuleUserてフォーマットする

質問: このような入力を受け入れるように powershell コマンドを取得するにはどうすればよいですか?

注: 私は有望と思われる ParameterSets について読んでいました。文字列に設定されたパラメーターを宣言できると考えていたので、文字列の最初の単語は、入力された残りのパラメーターの ParameterSet を設定します。

ありがとう!

4

1 に答える 1

2

残りのパラメーターがパラメーターの存在ではなくパラメーターの値に基づいている場合は、おそらく「動的パラメーター」を使用する必要があります。「get-help about_functions_advanced_pa​​rameters」を参照してください。動的パラメーターの内容は最後にあります。

値「addUserName」ではなく、一連のスイッチ パラメーター (-AddUserName など) を使用した場合、パラメーターセットは問題ありません。ParameterSet は、特定のセット専用のパラメーターの存在によって選択されます。

于 2014-12-17T03:16:53.537 に答える