PowerShell Function 5


在创建Function的时候如何实现,类似Get-Process这样,既可以通过“-Name” 又可以通过“-ID” 来筛选?

另外一个问题,我们在使用类似Get-NetAdapter的时候,默认只是显示一小部分信息,当使用Get-NetAdapter |Format-List 可以看到更多信息,如何实现?

上面这两个问题,毫无头绪,很纠结。请不吝赐教~~

本文链接: https://www.pstips.net/powershell-function.html
请尊重原作者和编辑的辛勤劳动,欢迎转载,并注明出处!

回复 cn_wangchen 取消回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

5 条评论 “PowerShell Function

  • zh23j_emu

    1. 可以通过switch参数来实现吧,如果有带switch参数,则通过select-object对结果进行筛选
    2. 这是一个基础知识点,叫format view,对于每一种类型,Powershell都有预定义的format view,存放在$pshome目录中。以默认格式输出时,会读取这里的格式(即哪些属性要显示,哪些不显示)。而Format-List相当于强制显示所有属性

  • Laxtiz

    第二个问题
    我的理解是
    Powershell 使用对象传递数据,通过管道实际上是传递的对象,管道后面的cmdlet 则获取全部数据分析
    而直接使用cmdlet, 类似于调用了对象的.toString() 方法,或者其他之类的方法,因此只输出简要数据
    Python 用户的理解:Python的对象都有一个 this.__str__ 方法

  • cn_wangchen

    function Get-processNoI {
    param (
    $Information
    )
    if ($information -match “\d”) {
    Get-process -id $Information
    }
    else {
    Get-process -ProcessName $Information
    }
    }
    $Information = Read-Host “Please input ProcessID or PorcessName”
    Get-processNoI -Information $Information