gpt4 book ai didi

powershell - 在CSV文件PowerShell中导出多个对象

转载 作者:行者123 更新时间:2023-12-02 23:39:56 26 4
gpt4 key购买 nike

我的代码有问题,当我在文件中导出时,在文件中仅显示一个对象时,应该有一个更好的示例:

结果如下:

Field1Test1

And I want to get this :

Field1  col1    col2   Field2   col3   col4Test1   a       b      Test2     c      d        a2      b2               c2     d2

The file :

col1    col2a       ba2      b2

I've tried my best to produce a piece of code, hope this will help. I create the field in the code.

$csv = Import-Csv .\file.csv -Delimiter ';'
$dataTable = New-Object System.Data.DataTable

$dataTable.Columns.Add("Field1") | Out-Null


foreach ($s in "Test1")
{
$row = $dataTable.NewRow()

$row["Field1"] = $s

$dataTable.Rows.Add($row)
}

#my problem is there, I don't know how merge these two lines
$dataTable | export-csv -NoTypeInformation -Path ".\fileResult.csv"

$csv | Export-CSV -Path ".\fileResult.csv" -NoTypeInformation -Delimiter ";" -Append

最佳答案

在您的示例中,您有标题和一行。我假设您会排队循环多个行。

运行所有这些代码将给您错误;使用单行或循环版本。

$csv = Import-Csv .\file.csv -Delimiter ';'

#Single line
$csv | Add-Member -Type Noteproperty -Name "Field1" -Value "Test1"
$csv | Add-Member -Type Noteproperty -Name "Field2" -Value "Test2"

#looping over all lines
foreach($line in $csv({
$line | Add-Member -Type Noteproperty -Name "Field1" -Value "Test1"
$line | Add-Member -Type Noteproperty -Name "Field2" -Value "Test2"
}

# use Select-Object to get orders CSV
$csv | Select-Object Field1, col1, col2, Field2 | Export-CSV -Path ".\fileResult.csv" -NoTypeInformation -Delimiter ";" -Append

编辑:一些解释

您的CSV文件将作为对象导入。标题( col1col2)被自动分配为对象的NoteProperty成员。您可以通过运行 $csv | Get-Member看到它。

您可以使用 Add-Member将成员添加到CSV对象,并指定成员类型,名称(标题)和值。

文档

Import-Csv
Add-Member
Export-Csv
Select-Object

关于powershell - 在CSV文件PowerShell中导出多个对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44799188/

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