Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
powershell管道monad是否可以在没有分配的情况下中断?_Powershell - Fatal编程技术网

powershell管道monad是否可以在没有分配的情况下中断?

powershell管道monad是否可以在没有分配的情况下中断?,powershell,Powershell,在我遇到的所有示例中,管道monad只有在赋值时才会中断。即: $result = ls | %{$_.FullName} | select -first 在没有赋值的情况下,上述语句的输出正好是一个项目的管道(由于使用了select-first),默认为写入write host 是否可以中断管道monad,使结果为单个值,而不将其分配给变量或等效项(例如,将结果作为参数传递给接受字符串的Cmdlet) (与我所追求的等价的LINQ是First(),它通过返回第一个实际值来打破IEnumera

在我遇到的所有示例中,管道monad只有在赋值时才会中断。即:

$result = ls | %{$_.FullName} | select -first
在没有赋值的情况下,上述语句的输出正好是一个项目的管道(由于使用了
select-first
),默认为写入
write host

是否可以中断管道monad,使结果为单个值,而不将其分配给变量或等效项(例如,将结果作为参数传递给接受字符串的Cmdlet)

(与我所追求的等价的LINQ是
First()
,它通过返回第一个实际值来打破
IEnumerable
单子)


注意:我对这个问题的答案没有实际用途,它只是学术性的。

编辑罗曼是对的,我不确定它一开始是如何工作的。更新

似乎最简单的方法是简单地访问第一项:

( @{Value = 1}, @{Value = 2} )[0].Value
如果没有任何项目,将优雅地面对:

@()[0].Value

嗯,我的结果不一样。在V2中,我什么也看不到。在V3中,我看到了两项:1、2。