国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > PowerShell > 正文

PowerShell函數參數設置成自動識別數據類型的例子

2020-10-29 21:08:07
字體:
來源:轉載
供稿:網友

本文介紹PowerShell自定義函數中使用參數集時,怎么設置系統自動識別參數的數據類型。

識別參數類型的一個好處就是,在使用參數集時,不需要每次都指定參數名稱了。

請看下面這個Test-Binding函數。這個PowerShell函數在設置參數集的時候,為參數集中的第一個參數設置了數據類型,這樣在調用函數時,就可以自動判斷一個參數值它應該賦給哪個參數了。

復制代碼 代碼如下:

function Test-Binding {
    [CmdletBinding(DefaultParameterSetName='Name')]
    param(
        [Parameter(ParameterSetName='ID', Position=0, Mandatory=$true)]
        [Int]
        $id,
        [Parameter(ParameterSetName='Name', Position=0, Mandatory=$true)]
        [String]
        $name
    )
    $set = $PSCmdlet.ParameterSetName
    “You selected $set parameter set”
    if ($set -eq ‘ID') {
        “The numeric ID is $id”
    } else {
        “You entered $name as a name”
    }
}

注意函數中參數$id上面的[int]和參數$name上面的[String]。有這了這樣的函數定義,那我們在調用時就方便了,如果傳一個字符串給它,它會把這個參數當作是$name,而傳一個數字給它,這個參數會被當作是$id。且看如下調用函數的示例。
復制代碼 代碼如下:

PS> Test-Binding -Name hallo
You selected Name parameter set
You entered hallo as a name
PS> Test-Binding -Id 12
You selected ID parameter set
The numeric ID is 12
PS> Test-Binding hallo
You selected Name parameter set
You entered hallo as a name
PS> Test-Binding 12
You selected ID parameter set
The numeric ID is 12

上面一共做了4次調用,前兩次調用都指定了參數名,沒有什么好說的。后面兩次都沒有指定參數名稱,但執行的結果跟前兩次一模一樣,這表示PowerShell函數自動識別了輸入參數要調用的哪個參數名稱。

關于PowerShell函數參數集自動識別參數數據類型,本文就介紹這么多,希望對您有所幫助,謝謝!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 青岛市| 乡宁县| 宕昌县| 门头沟区| 惠水县| 崇仁县| 兴业县| 宝坻区| 东乌| 迁安市| 凤庆县| 汤阴县| 宝鸡市| 龙江县| 邵武市| 会理县| 丹寨县| 茶陵县| 若羌县| 镇赉县| 铁岭市| 铜陵市| 赞皇县| 波密县| 湘乡市| 和龙市| 武功县| 黔江区| 香河县| 凌海市| 永丰县| 当雄县| 普陀区| 堆龙德庆县| 盘锦市| 神木县| 惠东县| 深州市| 诸暨市| 台江县| 南木林县|