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

首頁 > 開發 > PowerShell > 正文

PowerShell中使用Filter來創建管道輸入函數

2020-05-30 20:11:46
字體:
來源:轉載
供稿:網友

本文介紹在自定義PowerShell函數時,不使用Function而使用Filter。Filter可以快速的創建一個管道輸入函數,Filter就相當于只有一個Process塊的Function。

Filter關鍵詞可以代替Function關鍵詞來創建函數。但Filter創建的函數,只能是接收管道輸入參數的參數,并且是接收塊結構數據的輸入。所以在Filter定義的函數里面,你都看不到接收輸入參數。

在Filter定義的函數中,使用$_變量,來遍歷所有的輸入對象。
代碼如下:
Filter Test-ApplicationProgram
{
    if ($_.MainWindowTitle -ne '')
    {
        $_
    }
}

執行結果如下:
代碼如下:
PS> Get-Process | Test-ApplicationProgram
Handles NPM(K) PM(K) WS(K) VM(M) CPU(s) Id ProcessName
------- ------ ----- ----- ----- ------ -- -----------
787 53 110040 102008 319 7,91 7600 chrome
……

上面函數的作用是檢測窗口標題不為的進程,輸入參數必須是Process類型的變量。我們在演示的時候,使用了Get-Process來獲取所有的進程,然后當參數傳遞給Filter。

另外再說一句,Filter創建的函數跟Function創建的函數,在本質上是一樣的。所以,上面的Filter函數,與下面這段函數是一樣的。
代碼如下:
Function Test-ApplicationProgram
{
    process
    {
        if ($_.MainWindowTitle -ne ‘')
        {
            $_
        }
    }
}

或者說,在PowerShell系統內部,Filter創建的函數將被翻譯成上面這段Function存儲在內存中。

關于PowerShell使用Filter來快速創建管道輸入函數,本文就介紹這么多,希望對您有所幫助,謝謝!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 彭州市| 文化| 璧山县| 临夏市| 巫山县| 湟源县| 米林县| 惠安县| 股票| 彰武县| 永昌县| 台前县| 哈密市| 隆安县| 惠水县| 贵阳市| 闽侯县| 龙南县| 桐柏县| 南雄市| 泰兴市| 象山县| 鄂托克旗| 满洲里市| 自治县| 吉安市| 玛纳斯县| 武川县| 鄂托克前旗| 临夏市| 海安县| 姚安县| 涿州市| 崇义县| 宁河县| 西和县| 和硕县| 贵阳市| 邮箱| 沂南县| 望谟县|