PowerShell函数一次返回多个返回值示例

所属分类: 脚本专栏 / PowerShell 阅读数: 638
收藏 0 赞 0 分享

本文介绍在自定义PowerShell函数时,如何让函数返回值,如何接收返回值,如何让不相干的内容不放到返回值数组中。

PowerShell函数体中的任何输出,一般来说,都会以返回值的形式返回给函数调用者。多个输出的内容是放到一个返回值数组中的。

比如有如下一个返回值测试的函数,

复制代码 代码如下:

function Test-ReturnValue
{
    1
    ‘Hello'
    return Get-Date
}

这个函数定义了三个返回值,调用的效果如下:
复制代码 代码如下:

PS> Test-ReturnValue
1
Hello
Saturday, November 2, 2013 12:52:13
PS> $result = Test-ReturnValue
PS> $result[0]
1

由上面的调用可以看出,直接调用时,将像数组一样,分三行把每一个返回值都输出出来。而我们用一个变更$result来保存返回值时,我们可以看到函数的返回值是一个数组,从下标0开始,0-2是三个元素的下标。

下面我们说说如果想让函数有一些提示性的输出,但不想让这些个输出被放到函数的返回值中,应该怎么才能实现呢?微软建议我们使用Write-Host或Write-Warning,这两个cmdlet输出的内容将被直接显示到Console控制台上,而不会进入到返回值数组。

我们把上面的函数略作修改,加入两行提示性输出。

复制代码 代码如下:
function Test-ReturnValue
{
    #加一句Write-Host
    Write-Host ‘Starting' -ForegroundColor Green
    1
    ‘Hello'
    #再加一个Write-Warning
    Write-Warning ‘Almost done...'
    return Get-Date
}

然后看看执行效果,

复制代码 代码如下:

PS> Test-ReturnValue
Starting
1
Hello
WARNING: Almost done...
Saturday, November 2, 2013 12:54:11

PS> $result = Test-ReturnValue
Starting
WARNING: Almost done...


一次是直接调用,一次是赋值调用,大家看明白其中的区别了吗?Write-Host和Write-Warning,什么叫直接输出到控制台!

关于PowerShell函数返回值,本文就介绍这么多,希望对您有所帮助,谢谢!

更多精彩内容其他人还在看

PowerShell入门教程之高效使用PowerShell交互式运行环境的几个小技巧

这篇文章主要介绍了PowerShell入门教程之高效使用PowerShell交互式运行环境的几个小技巧,本文也可以说是使用PowerShell的一些好习惯,需要的朋友可以参考下
收藏 0 赞 0 分享

PowerShell入门教程之Cmd命令与PowerShell命令相互调用的方法

这篇文章主要介绍了PowerShell入门教程之Cmd命令与PowerShell命令相互调用的方法,本文讲解了在Cmd命令中调用PowerShell命令、在PowerShell命令中调用Cmd命令的方法,需要的朋友可以参考下
收藏 0 赞 0 分享

PowerShell入门教程之远程操作运行PowerShell的方法

这篇文章主要介绍了PowerShell入门教程之远程操作运行PowerShell的方法,本文讲解了配置远程基础结构、执行远程操作等内容,需要的朋友可以参考下
收藏 0 赞 0 分享

PowerShell入门教程之PowerShell管道介绍

这篇文章主要介绍了PowerShell入门教程之PowerShell管道介绍,本文讲解了管道的作用,并列出了几个使用实例,需要的朋友可以参考下
收藏 0 赞 0 分享

PowerShell入门教程之函数、脚本、作用域介绍

这篇文章主要介绍了PowerShell入门教程之函数、脚本、作用域介绍,本文所讲内容都是PowerShell的基础知识,需要的朋友可以参考下
收藏 0 赞 0 分享

PowerShell入门教程之访问.Net程序集、COM和WMI实例

这篇文章主要介绍了PowerShell入门教程之访问.Net程序集、COM和WMI实例,本文讲解了PowerShell作为Windows平台的脱水语言来访问其它资源的例子,需要的朋友可以参考下
收藏 0 赞 0 分享

PowerShell入门教程之创建和使用配置文件实例

这篇文章主要介绍了PowerShell入门教程之创建和使用配置文件实例,PowerShell的配置文件都是些普通的PowerShell脚本文件,需要的朋友可以参考下
收藏 0 赞 0 分享

PowerShell入门教程之编写和使用脚本模块实例

这篇文章主要介绍了PowerShell入门教程之编写和使用脚本模块实例,本文讲解了模块、脚本模块、编写脚本模块、模块安装路径、模块文件夹等内容,需要的朋友可以参考下
收藏 0 赞 0 分享

WMI入门教程之什么是WMI?

这篇文章主要介绍了WMI入门教程之什么是WMI?WMI有一组API,我们可以使用VBScript、PowerShell脚本还是利用C#的来访问WMI的类库,需要的朋友可以参考下
收藏 0 赞 0 分享

WMI入门教程之怎么使用WMI?

这篇文章主要介绍了WMI入门教程之怎么使用WMI?本文讲解了在软件中、PowerShell中、.NET中使用WMI的例子,需要的朋友可以参考下
收藏 0 赞 0 分享
查看更多