gpt4 book ai didi

powershell - 如何将命令行的输出作为流逐行处理

转载 作者:行者123 更新时间:2023-12-04 14:44:57 25 4
gpt4 key购买 nike

写作 SomeCommand | { ... }管道 SomeCommand 的整个输出到大括号中的代码。有没有办法一次“管道”一行并让大括号中的代码一行一行地处理它,而无需等待整个输出存储在内存中?

更新

[从评论复制]
SomeCommand是一个可执行文件(不是 powershell cmdlet),它在运行时会产生一些输出。它产生的行之间需要一些时间,我不想等到所有行都产生后才对每行执行一些操作

最佳答案

为了让脚本块能够访问管道,您需要在其中包含进程块:
比较两者:

1, 2, 3 | & {
process {
$_
Start-Sleep -Seconds 1
}
}

1, 2, 3 | & {
$input
Start-Sleep -Seconds 1
}

显然, Foreach-Object (在前面的答案中提到)通常比在这种情况下使用脚本块更好,但是由于您要求使用脚本块,因此您还应该获得脚本块...

关于powershell - 如何将命令行的输出作为流逐行处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23856339/

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