【发布时间】:2020-11-24 06:51:29
【问题描述】:
我又是 Powershell 新手(到现在我已经使用 Powershell 工作了 11 天)。
那么到目前为止我遇到的问题是什么: 我正在从不同的文件夹中读取 csv 文件并将数据合并到一个大 csv (bigCSV) 中。 bigCSV 是一个动态文档,因此我手动将数据添加到此工作表中。
问题是,如果我必须更新 bigCSV(使用新的 csv 文件),现有的 bigCSV 会被覆盖并且我手动添加的数据会丢失。
我尝试将 -append 添加到我的代码中,但结果并不令人满意,因为手动添加的数据仍然存在,但现在我有重复...
到目前为止,这是我的代码...
$Userpath_Access = "$PSScriptRoot"
$txtFiles = Get-ChildItem -Path $Userpath_Access\txt-Import-Datenbank\ -Filter *.csv -Recurse -ErrorAction SilentlyContinue -Force
$csv = foreach ($file in $txtFiles) {
Import-Csv -Path $file.FullName -Delimiter ";" |
Select-Object 'Type (BAY)', 'Order Number (BAY)', 'PCP Number (PCP)', @{label='Project ID (Mosaic)';expression={$($_.'Project')}}, 'Priority (BAY)', @{label='Compound No (Mosaic)';expression={$($_.'Compound No')}},
@{label='Customer (Mosaic)';expression={$($_.'Requestor')}}, @{label='Date Order Created (Mosaic)';expression={$($_.'Order Date')}}, @{label='Comment (Mosaic)';expression={$($_.'Comment')}}, 'Status', 'Data Finalized', @{label='Compound Amount [mg] (Mosaic)';expression={$($_.'Amount')}},
'Mail Address', 'Duration', @{label='Name Of Customer (Mosaic)';expression={$($_.'Requestor')}}, @{label='Vial (Mosaic)';expression={$($_.'Vial')}}, @{label='Mosaic File (Mosaic)';expression={$($_.'Filename')}}, @{label='Date Received (Mosaic)';expression={$($_.'Data import')}},
@{label='Order ID (Mosaic)';expression={$($_.'Order ID')}}
}
$fileOut = Join-Path -Path $Userpath_Access -ChildPath ('Inh_Auftragsliste.csv')
$csv | Export-Csv -Path $fileOut -Delimiter ";" -NoTypeInformation -Append
现在我正在寻找解决方案,只需将“新文件”添加到我现有的 bigCSV。
【问题讨论】:
-
我们还没有收到您的来信.. 任何给定的答案是否解决了您的问题?如果是这样,请点击左侧的✓ 考虑accepting。这将帮助其他有类似问题的人更轻松地找到它。
-
我很抱歉......科罗娜抓住了我,我完全错过了提供一些反馈。 :-(
-
哇,好重……希望你现在感觉好多了。
-
是的,我又恢复了健康,我希望,从现在开始我就免疫了。 :)
标签: powershell csv merge updates