如何将 属性 选择作为参数传递

How to Pass property selection as parameter

我有包含各种 columns/fields 的 csv 文件。我有一个处理 csv 文件的脚本。 我想从 csv 文件 select 向脚本传递我想要的属性。

例如如果 csv 文件看起来像:

HotfIxId、名称、日期、已安装

我只想 select HotfixId 和日期,我这样做:

Import-Csv path.csv | select -Property HotfixId,Date

这有效。

但是如果我传入 "HotfixId,Date" 作为参数 $columnsParam

然后在脚本中做

Import-Csv path.csv | select -Property $columnsParam

这不起作用,我只得到一个空的 return,其中 1 列标题为

修补程序 ID、日期

如何将属性传递给脚本,或者如何在 select -属性 语句中 use/dereference 它们?

非常感谢

作为@CB。在对你的问题的评论中说,属性 列表必须是一个数组:

$columnsParam = 'HotfixId', 'Date'
Import-Csv path.csv | select -Property $columnsParam

如果将 $columnsParam 定义为单个字符串,Select-Object 将 select(不存在的)属性 HotfixId,Date 而不是两个属性HotfixIdDate.