用powershell替换csv文件头行

时间:2014-07-17 01:49:53

标签: powershell csv replace header

是否可以将csv文件导入powershell,用定义的数据集替换整个标题行,然后使用新名称保存到csv文件中。

我需要能够自动执行此任务,以便其他软件可以使用它。

任何想法都将不胜感激。

2 个答案:

答案 0 :(得分:1)

示例文件内容

1,b,4
8,j,7
8,k,9

制作自己的标题:

Import-Csv D:\Temp\txt.txt -Header "name","letter","value"

name                                                     letter                                                   value                                                  
----                                                     ------                                                   -----                                                  
1                                                        b                                                        4                                                      
8                                                        j                                                        7                                                      
8                                                        k                                                        9     

要跳过行:

Import-Csv D:\Temp\txt.txt -Header "name","letter","value" | select -skip 1

name                                                     letter                                                   value                                                  
----                                                     ------                                                   -----                                                  
8                                                        j                                                        7                                                      
8                                                        k                                                        9  

将它与出口联系起来:

$tempCSV = Import-Csv D:\Temp\txt.txt -Header "name","letter","value" | select -skip 1
$tempCSV | Export-CSV D:\Temp\txt.txt -NoTypeInformation

答案 1 :(得分:0)

处理此问题的简单方法可以是:     $ temp =获取内容〜\< CSVFileName > .csv;     $ temp [0] = $ temp [0] .replace($ temp [0],"< NewCommaSeperatedHeader >");     Set-Content -Path~ \< ModHeaderCSVFile > .csv -Value $ temp;