gpt4 book ai didi

powershell - 试图让高阶函数在powershell中工作

转载 作者:行者123 更新时间:2023-12-03 16:37:10 25 4
gpt4 key购买 nike

我无法让这个例子工作

{ $_ + $_ }, { $_ + 1}, {$_ - 1} | % { $_ 1 }

我希望它构造一个列表/数组/集合/任何函数(这部分很好),然后将该列表通过管道传输到右侧的代码块,该代码块将每个函数应用于参数 1 并返回一个数组结果(即;2,2,0)。我已经尝试使用 getnewclosure() 方法、& 运算符,到目前为止没有任何效果。

最佳答案

美元下划线变量是一个自动变量,仅在某些场景中填充;在这种情况下,当有来自管道的传入对象时。为了给 $_ 1 的值,这似乎是您的意图,您必须将数字传递给每个数字并执行脚本 block 。最简单的方法是直接将它作为参数传递给 % ( foreach-object ) 接受一个脚本 block :

PS> { $_ + $_ }, { $_ + 1}, {$_ - 1} | % { 1 | % $_ }
2
2
0

看看它直到它有意义:) 如果它没有点击,请在这里评论,我会更详细地解释。

如果您对 powershell 中的功能修补感兴趣,您可能会喜欢我为部分应用程序编写的这个功能:

http://www.nivot.org/blog/post/2010/03/11/PowerShell20PartialApplicationOfFunctionsAndCmdlets

这有点笨拙,但仍然可以。

关于powershell - 试图让高阶函数在powershell中工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17583885/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com