PowerShell:如何将多个 CSV 文件合并为一个
您可以在 PowerShell 中使用以下语法将多个 CSV 文件合并为一个:
Get-ChildItem -path $path -Filter *.csv |
Select-Object -ExpandProperty FullName |
Import-Csv |
Export-Csv all_data.csv -NoTypeInformation -Append
此特定示例将合并 $path 变量指定的文件夹中的所有 CSV 文件,并将它们输出到名为 all_data.csv 的单个 CSV 文件。
以下示例展示了如何在实践中使用此语法。
示例:如何使用 PowerShell 将多个 CSV 文件合并为一个
假设我们有位于以下路径的三个 CSV 文件,我们希望将它们合并为一个 CSV 文件:
- c:\users\bobbi\data3\starters.csv
- c:\users\bobbi\data3\backups.csv
- c:\users\bobbi\data3\reserves.csv
我们可以使用 Get-Content cmdlet 来查看每个 CSV 文件的内容:
我们可以看到这三个文件中的每一个都包含有关各个篮球运动员的信息。
请注意,每个 CSV 文件都具有相同的列名称。
我们可以使用以下语法将每个 CSV 文件合并到一个名为 all_data.csv 的文件中:
$path = "c:\users\bobbi\data3"
Get-ChildItem -path $path -Filter *.csv |
Select-Object -ExpandProperty FullName |
Import-Csv |
Export-Csv all_data.csv -NoTypeInformation -Append以下屏幕截图显示了如何在实践中使用此语法:
我们已成功将所有三个 CSV 文件合并为一个 CSV 文件。
请注意,CSV 文件包含每个文件中的所有行,并且标题行仅在文件顶部出现一次。
注意:使用Export-Csv时,我们添加了-NoTypeInformation来删除#TYPE信息,否则这些信息会出现在CSV文件的标题中。

