gpt4 book ai didi

powershell - get-date|Write-Host($_) 在概念上有什么问题

转载 作者:行者123 更新时间:2023-12-02 12:40:05 24 4
gpt4 key购买 nike

我试图理解 Powershell,但发现有些东西不太直观。我的理解是,在管道中传递对象,而不是传统的文本。 $_ 指的是管道中的当前对象。那么,为什么以下不起作用:

get-date|Write-Host "$_"

错误消息是:

Write-Host:输入对象无法绑定(bind)到命令的任何参数,因为该命令不接受管道输入或输入及其属性不匹配h 接受管道输入的任何参数。行数:1 字符:10+ 获取日期|写入主机 $_+ ~~~~~~~~~~~~~ + CategoryInfo : InvalidArgument: (10-9-2014 15:17:00:PSObject) [Write-Host], ParameterBindingException +FullyQualifiedErrorId:InputObjectNotBound,Microsoft.PowerShell.Commands.WriteHostCommand

最佳答案

$_ 是管道中当前的单个项目。要编写管道中的每个项目,您需要编写

get-data | foreach { Write-Host $_ }

或者缩写形式

get-data |% { Write-Host $_ }

从概念上讲,Foreach 是一个 cmdlet,它接收函数参数、管道输入并将函数应用于管道的每个项目。您不能只使用 $_ 编写代码 - 您需要有一个函数明确声明它同意接收管道输入

关于powershell - get-date|Write-Host($_) 在概念上有什么问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25766438/

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