gpt4 book ai didi

powershell - 跨列将变量写入现有CSV

转载 作者:行者123 更新时间:2023-12-03 00:44:09 25 4
gpt4 key购买 nike

这是关于Out-File的限制以及将字符串值转换为对象以使用Export-CSV的两部分问题。

我正在研究一个脚本,以提取各种信息并将其添加到现有的csv文档中。我目前正在使用Out-File,但我不认为它具有所需的功能。

$date, $computerName, $env:UserName, 'error' | Out-File $report -Append

上面的示例将所有数据添加到一个列中,例如:
date
computername
username
error

我想读:
date computername username error

我尝试使用 Export-CSV,但是由于我的变量是字符串,因此只写字符串长度而不是变量。我很高兴将 Export-CSV-Append一起使用,只要它能正确报告项目。

如果我们可以使表具有标题,则可以加分:
date computername username error
8/15/2018 A1 Bob PowerIssue
8/15/2018 A2 Tom InternetIssue

最佳答案

$date, $computerName, $env:UserName, 'error'是一个集合,它将转换为字符串数组。因此,然后Out-File接受该数组的每个元素,并将其每行吐出一个元素。

您可以生成一个字符串。例如,

"$date, $computerName, $env:UserName, error" | Out-File $report -Append

但是更好的方法是制作一个对象,然后将其导出到csv。这是使用 [pscustomobject]的示例,该示例需要PS3 +
$ExampleObjects = @(
[pscustomobject]@{
Date = Get-Date
ComputerName = 'A1'
UserName = 'Bob'
Error = 'PowerIssue'
},
[pscustomobject]@{
Date = Get-Date
ComputerName = 'A2'
UserName = 'Tom'
Error = 'InternetIssue'
}
)

$ExampleObjects | Export-CSV $report -Append -NoTypeInformation

关于powershell - 跨列将变量写入现有CSV,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51866121/

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