gpt4 book ai didi

powershell - 如何在PowerShell中写入控制台?

转载 作者:行者123 更新时间:2023-12-03 04:27:54 27 4
gpt4 key购买 nike

我对打印(回显)到控制台的各种方法有点困惑。我看到有多种方法可以将输出写入控制台,例如:

Write-Host "Hello world1"
"Hello World2"
Out-Host -InputObject "Hello World3"

所有三种方式都会打印到控制台。中间的一个在某种程度上更简单、更简洁并且更易于使用。我还发现当你编写一个函数时,例如:

function GetValues()
{
"1"
"2"
}

它仍然在管道中返回两个字符串:

而且我仍然能够打印出这些值:

foreach ($s in GetValues)
{
Write-Host "s: " $s
}

我发现仅使用带引号的字符串并不总是出现在自定义主机上,并且我必须使用 Write-Host获取要在自定义主机上打印的值。

不知怎的,我觉得这很令人困惑。 “Print Something” 是否应该是 Write-Host 的别名,或者其意图是什么?

最佳答案

PowerShell 的默认行为只是转储管道外的所有内容,而不被另一个管道元素拾取或分配给变量(或重定向)到 Out-Host 中。 Out-Host 的作用显然是依赖于主机的。

仅仅让事情从管道中掉出来不能替代Write-Host,后者的存在的唯一原因是在主机应用程序中输出文本。

如果您想要输出,请使用 Write-* cmdlet。如果您想要从函数返回值,那么只需将对象转储到那里,而不需要任何 cmdlet。

关于powershell - 如何在PowerShell中写入控制台?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10832000/

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