我一直在争取过的东西,似乎很简单,以我一个小时......但我不能这样做
说明:
我导入CSV谁是这样的,他是空的:
DAYS | PC1 | PC2
我有一个变量“$日”谁是这样的:
PS C:\Users> $Days
12/02/2019
13/02/2019
14/02/2019
15/02/2019
16/02/2019
所有我想要的是每一行添加到“天”列...
喜欢 :
DAYS | PC1 | PC2
12/02/2019 | |
13/02/2019 | |
14/02/2019 | |
15/02/2019 | |
16/02/2019 | |
我试着这么做:
Foreach ($row in $Days){
$CSV.Days = $row
}
但他告诉我,物业“天”是找不到的。
我也尝试这样的事情:
$CSV | Select-Object @{Name='Days';Expression={$forearch ($row in $Days){$row}}},*
但没有结果再次,我不知道我在做什么错?
预先感谢您的帮助。
你的方法的问题是,该文件是空的因此没有属性为$生成CSV
一个简单的解决方案是通过迭代$天,建设[PSCustomObject]
生成CSV $
$Days = @'
12/02/2019
13/02/2019
14/02/2019
15/02/2019
16/02/2019
'@ -split '\r?\n'
$CSV = $Days | ForEach-Object{
[PSCustomObject]@{
DAYS = $_
PC1 = $NULL
PC2 = $NULL
}
}
$CSV
$CSV | Export-Csv .\YouNameIt.csv -NoTypeInformation
或者,一个较短的版本:
$CSV-out = $csv | ForEach-Object{[PSCustomObject]@{DAYS = $_}}|Select days, PC1, PC2
$ CSV是值的列表。如同
$csv = @("12/02/2019","13/02/2019","14/02/2019","15/02/2019","16/02/2019")
然后,如果您做了$ CSV | FT
DAYS PC1 PC2
---- --- ---
12/02/2019
13/02/2019
14/02/2019
15/02/2019
16/02/2019
您不必包括自定义对象只是添加字段。你可以做一个
选择
它会增加他们对你。