PowerShell函数中的开关参数介绍和创建实例

607 查看

本文介绍什么是开关参数,在PowerShell自定义函数中,如何创建开关参数并使用开关参数的值。

什么叫开关参数呢?举个例子,技术男一般都知道有一个网络命令叫“Ping”,我们可以使用“ping www.jb51.net”这样一个命令来检查本地计算机到www.jb51.net这个网站所在的服务器网络是否连通。这个命令会从本地发送4个数据包到www.jb51.net服务器,并显示每个数据包是否收到了反馈结果。如果我正在重启www.jb51.net这台服务器,那么ping是得不到返回的。如果服务器重启好了,那么就又会有返回结果了。于是我使用“ping -t www.jb51.net”这个命令,它可以一直向www.jb51.net服务器发送数据包,而不是默认的4个。

好了,扯了这么说,我要说明的是什么呢?就是这个“-t”参数,它就是一个开关参数。有了它,ping就一直发数据包,没有它,ping就只发4个数据包。那我们来看看在PowerShell自定义函数中,如何创建这样一个开关参数。

复制代码 代码如下:

function Test-Ping {
    param
    (
        [Switch]
        $t
    )
    if ($t)
    {
        Write-Host ‘一直ping'
    }
    else
    {
        Write-Host ‘ping 4 次'
    }
}

OK,这个函数我就来模拟了一下ping的-t开关函数,参数名为$t。if($t)表示使用了-t参数,在调用时应该是“Test-Ping -t”,这时应该输出“一直ping”。如果直接调用 Test-Ping,那将得到“ping 4 次”的提示。
复制代码 代码如下:

PS C:\Users\Hong> test-ping
ping 4 次
PS C:\Users\Hong> test-ping -t

一直ping

前者是没有启用开关,后者启用了开关。这就是开关参数在PowerShell函数中的使用。

关于PowerShell函数中创建开关参数,本文就介绍这么多,希望对您有所帮助,谢谢!