經過前面兩篇介紹,應該可以寫出一個最簡單的Function了.但隨着使用的深入,很快就會感覺到力不從心.
因爲基礎的Function是在是感覺太Low了,跟官方的或是人家寫出來的比起來...功能弱雞.逼格不高.
那麼爲了強化我們的Function,讓逼格高起來.從這一篇開始講解進階一些的功能.
目標:
1.輸入姓名和年齡後,直接在顯示 某某 今年 多少 歲 .
2.強制使用Name參數.
示例:
Function Test-Function { Param ( [parameter(Mandatory=$true)]$Name, $Age = "18" ) Write-Host "$Name 今年 $Age 歲." }
說明:
與上篇文章中相比,我們在Name參數的前面加上了一些關鍵字"[parameter(Mandatory=$true)]",包括後面還會介紹一些針對參數的設定,都是寫在"parameter( )"裏面
在這一篇裏,我們設定了Mandatory=$true來表示,在使用這個Function的時候必須要使用Name參數.因爲從我們的目標來看,如果不使用Name的參數的話那就會顯示成"(空白) 今年 多少歲"這顯然是不合適的.
運行結果:
可以看到,我在不指定任何參數的情況下運行了Test-Function,但PowerShell提示我要爲Name參數提供一個值.直到我提供了Name的值以後,這個Function才得以正常的運行下去.
這樣,就達到我們 要求指定一個人名的情況下才能執行 的目的.當然如果你一開始就老老實實的爲Name賦值了是可以順暢運行下去的.