2016-09-21 12 views
1

PowerShellスクリプトの関数は、スクリプトコマンドを簡単に整理できるようにするコードブロックという名前です。PowerShell functions

使用して定義します。

Function [Scope Type:]<Function name> 

例:パラメータ 例と

Function Test 
{ 
Write-Host "Test method" 
} 
Test 

機能:

Function Test($msg) 
{ 
    Param ([string] $msg) 
    Write-Host "$msg" 
} 
Test "Test method" 

出力:

Test method 

パラメータタイプ:

  1. 名前のparams:Param ([int] $first,[int] $second)

  2. 定位置のparams:$args[0], $args[1]

  3. スイッチのparams:Param([Switch] $one,[Switch] $two)

  4. ダイナミックのparams:Set-Item -path alias:OpenNotepad -value c:\windows\notepad.exe

この「スイッチパラメータ」はPowershellスクリプトでどのように機能しますか?

+1

[PowerShell拡張機能パラメータの属性 - スイッチのパラメータ](https://social.technet.microsoft.com/wiki/contents/articles/15994.powershell-advanced-function-parameter-attributes.aspx#Switch_Paramters) – TessellatingHeckler

+1

Areあなたは質問をしたり、チュートリアルを提供していますか? – Merenix

+0

私は両方を意味しました。すなわち、私が知っている情報を提供し、私が知らないものは何でも尋ねる – Anitha

答えて

2

ブール値のようですが、$trueまたは$falseを渡す必要はありません(ただしできます)。例:

function Test-SwitchParam 
{ 
    Param(
     [Switch] $one, 
     [Switch] $two 
    ) 

    if ($one) 
    { 
     Write-Host "Switch one is set" 
    } 

    if ($two) 
    { 
     Write-Host "Switch two is set" 
    } 
} 

今、あなたのような関数を呼び出すことができます。

Test-SwitchParam -one 

それが設定されているため、スイッチ$one$twoはfalseになります、$trueになります。