如何用PowerShell的Import-Csv提取CSV文件的Name和Value列并输出
使用PowerShell提取CSV指定列生成目标文件
要实现从分号分隔的CSV(File1)中提取Name和Value列并生成指定格式的文件(File2),可以用以下PowerShell命令:
Import-Csv -Path "File1.csv" -Delimiter ';' | ForEach-Object { # 拼接Name和去除前后空格的Value,用分号分隔 "$($_.Name);$($_.Value.Trim())" } | Out-File "File2.csv" -Encoding utf8
命令说明:
Import-Csv -Path "File1.csv" -Delimiter ';':原文件是分号分隔,必须指定-Delimiter ';',否则PowerShell会默认按逗号解析,导致列识别错误。ForEach-Object:遍历每一行数据,用字符串插值把Name列的值和清理过空格的Value列值拼接成目标格式的行。Out-File "File2.csv" -Encoding utf8:将处理后的内容写入目标文件,指定UTF8编码避免特殊字符乱码。
如果原Value列的前后空格不需要清理,直接去掉.Trim()即可:
Import-Csv -Path "File1.csv" -Delimiter ';' | ForEach-Object { "$($_.Name);$($_.Value)" } | Out-File "File2.csv" -Encoding utf8
内容的提问来源于stack exchange,提问作者Piravienth
相关产品推荐
相关产品推荐

