[英]Powershell ForEach & ForEach-Object with Select
我试图使用 ForEach 和 ForEach-Object 遍历 $s4a 中的文件名列表并显示 output。 我发现生成 output 的唯一两种方法是:
有人可以让我知道为什么下面的没有产生任何东西,而上面的两个工作吗?
非常感谢
本质上,这是因为您的语法对于每个不起作用的语句都不正确。 在每个非工作示例中,您都没有正确引用您希望查看“名称”属性的 object。
Select-Object 通常在从管道接受输入 object 时使用,但也可以使用 -InputObject 参数识别 object。
通过 $object.propertyName 调用 object 属性时,您不需要 select 语句。
而不是ForEach ($name in $s4a) {Select Name}
,试试这个: ForEach ($name in $s4a) {$name | Select Name}
ForEach ($name in $s4a) {$name | Select Name}
代替ForEach ($name in $s4a) {Select $name.Name}
,试试这个: ForEach ($name in $s4a) {$name.Name}
而不是$s4a| ForEach-Object {Select$_.Name}
$s4a| ForEach-Object {Select$_.Name}
,试试这个: $s4a| ForEach-Object {$_.Name}
$s4a| ForEach-Object {$_.Name}
而不是$s4a| ForEach-Object {Select Name}
$s4a| ForEach-Object {Select Name}
,试试这个: $s4a| ForEach-Object {$_ | Select Name}
$s4a| ForEach-Object {$_ | Select Name}
另外,请注意,每种方法返回信息的方式有所不同。 Select 语句返回仅包含您选择的属性的原始对象的修改版本。 而直接调用属性仅返回该属性的值。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.