使用Export CSV命令导出到PowerShell中的CSV文件

CSV是一种流行的文件格式,用于存储表格数据。CSV实际上是一个简单的文本文件,其中每一列或部分数据通常用逗号分隔。CSV名称来自命令分隔的值。CSV格式的另一个有用特性是CSV文件可以很容易地转换成Excel文件,并且可以用Excel工具打开。PowerShell提供Export Csv命令,以便创建数据或将数据导出到Csv文件中。

null

导出CSV命令示例

我们将从一个简单的CSV导出示例开始。当Export CSV命令将指定的数据导出到CSV文件中时,我们将使用进程列表作为数据。我们将使用Get进程以表格或结构化的方式列出当前正在运行的进程和相关信息。在下面的示例中,我们将正在运行的进程和相关信息导出到名为 进程.csv .

Get-Process | Export-CSV Process.csv

名为Process.csv的导出文件的内容如下所示。我们可以看到CSV文件的第一行包含头信息

图片[1]-使用Export CSV命令导出到PowerShell中的CSV文件-yiteyi-C++库
导出CSV文件内容

或者,可以使用下面的-Path选项指定CSV文件。

Get-Process | Export-CSV -Path .Process.csv

我们可以将CSV文件导出到不同的路径,而不是当前的工作目录。-Path选项可以与CSV文件名一起使用不同的路径或绝对路径。也可以使用-Path选项导出到不同的驱动器或分区。

Get-Process | Export-CSV -Path D:DataProcess.csv

删除类型信息

当与另一个PowerShell命令一起使用时,Export CSV命令会默认导出CSV文件第一行中输出的类型信息。可以使用 -Notype信息 选项如下。

Get-Process | Export-CSV -NoTypeInformation -Path Process.csv

将分号设置为分隔符而不是逗号

CSV文件的名称来自逗号,逗号用作默认分隔符。默认分隔符命令可以更改为另一个符号,如分号。对于CSV文件分隔符,分号也非常流行。分隔符选项可用于将分号设置为分隔符。

Get-Process | Export-CSV -Semicolon ';' -Path Process.csv

也可以使用-Delimiter选项设置不同的分隔符,如点、字符等。

相关文章: 如何在Windows桌面上创建新文件夹?

覆盖只读CSV文件

在某些情况下,Export CSV命令可用于覆盖现有CSV文件。即使是这个CSV文件也可以设置为只读,因为在正常情况下无法进行覆盖。当我们试图写入现有的只读文件时,通常会出现以下错误或异常。

Export-Csv : Access to the path 'C:Process.csv' is denied. At line:1 char:15 + Get-Process | Export-Csv -Path .ReadOnly.csv -NoTypeInformation +               ~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo          : OpenError: (:) [Export-Csv], UnauthorizedAccessException + FullyQualifiedErrorId : FileOpenFailure,Microsoft.PowerShell.Commands.ExportCsvCommand

我们可以使用 -力 选项以覆盖现有文件。

Get-Process | Export-CSV -Force -Path Process.csv

附加现有CSV文件

Export CSV命令的另一个有用功能是能够附加现有CSV文件。如果我们需要在现有数据中添加新数据,这是非常有用的。这不会覆盖现有数据,只会添加新行。这个 -追加 选项可用于附加现有CSV文件。

Get-Process | Export-CSV -Append Process.csv

如果你犯了这样的错误 追加的对象没有与以下列对应的属性:Version “您可以尝试使用-Append选项和-Force选项,如下所示。

Get-Process | Export-CSV -Append -Force Process.csv
© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享