【发布时间】:2021-03-22 10:45:18
【问题描述】:
我有一个 CSV 文件,前 9 行包含不属于 CSV 数据的文本。列的标题放在第 10 行,随后的行 (11+) 包含数据。该文件是通过 rest 获取的。
我如何简单地告诉 Import-Csv cmdlet 执行此操作?
我试过这个:
$tempFile = New-TemporaryFile
$url = "some-url/data.csv""
Invoke-RestMethod -Uri $url -Method Get -OutFile $tempFile #Put CSV into file from Rest API
$f = Import-Csv -Path $tempFile -Delimiter ';' -Skip 9 -Header @("Datum", "Tid (UTC)",
"Lufttemperatur", "Kvalitet")
$f | Select-Object { $_ | Select-Object Datum, 'Tid (UTC)', Lufttemperatur, Kvalitet}
即我试图跳过文件中的第一行。但是,这似乎并不奏效。我在这里做错了什么?
欢迎任何想法! 亲切的问候, 彼得
【问题讨论】:
-
先用
Get-Content | Select-Object -Skip 9再用ConvertFrom-CSV怎么样? -
如果此文件的编写者以 # 字符开始这 9 行中的每一行,Import-Csv 会将它们视为 cmets。如果您可以控制您的提要,您可能需要考虑这一点。
标签: powershell rest csv