第一次使用PowerShell。
我试图找到一种方法来使用函数输出作为另一个函数的输入。
例如,
{{1}}
我们的想法是创建一个脚本或模块来独立调用不同的函数。它从第一个函数开始,并将输出传递给另一个函数作为输入。 这些函数可以独立运行,也可以按顺序运行。
任何例子?
答案 0 :(得分:2)
函数的所有输出都传递给管道。这就是输出。您正在使用write-host
,它仅用于在控制台上显示。使用Write-Output
或只是将命令写出来。我还建议您查看about_functions。
不完全确定问题是什么,但问题是我会做这样的事情。
Function TK
{
param ([int]$OTK)
$OTK * 2
}
Function MAT
{
param ([int]$OMAT, $TK)
$OMAT * $TK /5
}
行$OMAT * $TK /5
也可以读为Write-Output $OMAT * $TK /5
。它们在功能上是相同的。
我为MAT
函数添加了第二个值$TK
的另一个参数。您可以使用global
关键字声明变量,但这很简洁。这将是一个示例函数调用,它输出结果10
MAT 5 (TK 5)
计算表达式(TK 5)
,然后将其作为函数MAT
的第二个值发送。您也可以将变量用作中间人,但除非您需要多次使用函数调用输出,否则这将是多余的。
$result = TK 5
MAT 5 $result
您也可以像任何cmdlet一样在另一个内部调用函数。尽管在调用函数之前声明函数很重要。
Function MAT
{
param ([int]$OMAT)
$OMAT * TK /5
}
注意" TK"上面的代码将调用函数TK
。