【发布时间】:2020-01-17 14:09:21
【问题描述】:
我有一个 CSV 文件,我需要将分隔符从逗号更改为分号。 我用以下命令解决了这个问题
(Import-CSV $File) | Export-Csv $File -delimiter ';' -notypeinformation
但是当导入的 CSV 文件只包含我假设正在作为标题处理的一行时。它会删除输出文件中的这一行,并变成一个空文件。 但是,当我有不止一行并且 csv 包含标题和一些数据时,导出的文件正在使用标题和数据正确执行。
我用来在脚本开头设置头文件的代码
#set csv headers
Set-Content -Path "$FolderNameCiTypeDelta" -Value "name,type,location,size"
我已经尝试添加代码
(Import-CSV $File -Header "name,type,location,size") | Export-Csv $File -delimiter ';' -notypeinformation
但这只是用我指定的标题多出了一行。
[编辑]
我测试的 2 个 csv 文件包含以下几行
用 import 变成空的文件 --> export 命令包含
name,type,location,size
使用 import --> export 命令执行我需要的文件包含
name,type,location,size
test,extra,line
【问题讨论】:
-
请添加一个无法按预期工作的文件的净化样本。
-
@Lee_Dailey 我添加了我用作输入的 csv 文件样本
-
感谢您添加的信息! [grin] 看起来
AdminOfThings已经为您的问题发布了一个可行的解决方案……所以我会继续潜伏。
标签: powershell csv