2010年8月25日 星期三

PowerShell Learning Note (1) - Function


主要參考來源 : http://technet.microsoft.com/zh-tw/library/dd125504.aspx
  • Declare : function [] [([type]$parameter1[,[type]$parameter2])]  {
              param([type]$parameter1 [,[type]$parameter2])

              dynamicparam {}
  
              begin {}
              process {}
              end {}
          }
    • : 指定function的可視範圍, 也可用於變數, 主要應用於此, 另一議題, 需再另深入探討
      private :
      local :
      script :
      global :
    • param([type]$parameter1 [,[type]$parameter2]) : 引入參數, 同在 function_name 後使用([type]$parameter1[,[type]$parameter2]), 這樣的方法較接近一般的語言 ...
    • dynamicparam 
    • 可用 return 來回傳值, 但注意: 所有會產生將結果print out 到console的statement, 都回成為回傳值的一部分
    • begin, process, end : 當使用pipeline 呼叫function時, 才會產生效果
      Begin:只會在函式一開始時執行一次,適合放置初始動作的程式碼,例如初始變數。
      Process:至少執行一次,但有可能重複執行數次。
      End:只會在函式結束前執行一次。
  • Example :
    function my_function_test ([string]$str, [int]$intValue1, [int]$intValue2) {
       $str=$intValue1 + $intValue2
       return $str
    }

沒有留言: