在最后一栏中将姓氏、名字、姓氏更改为CSV PowerShell [英] Changes last name, first name to first name, last name in last column CSV powershell

查看:24
本文介绍了在最后一栏中将姓氏、名字、姓氏更改为CSV PowerShell的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我是PowerShell的新手。我正在尝试更改CSV文件中最后一列中的姓氏、名字和姓氏,并将我所做的所有更改导出到新的CSV文件。

数据如下所示。

体育、性别、邮编、招聘人员
"棒球","男","12345","约翰,韦恩"

我尝试使用

Get-Content "C:import.csv" |    
ForEach-Object {$_.Recruiter -replace ",", ""} |      
ForEach-Object {$_.Sport -replace ",", ""} |     
Set-content "C:export.csv"  

这是一个样例代码,当然不起作用,但我必须使用ForEach-Object为每一列更改一串标点符号,并希望最后一列是"F_NAME L_NAME"。当我使用$_.Recruiter调用该列时,我只得到了空的CSV文件。当我使用Import-CSV而不是Get-Content时,我只得到了选中的列,而所有其他列都丢失了。任何帮助都将不胜感激。

谢谢。

推荐答案

我认为您使用IMPORT-CSV执行此任务是正确的。将这些字段作为对象属性使用要比尝试将它们解析为字符串容易得多。试试这个。

Import-Csv "import.csv" | 
foreach { 
    $_.Recruiter = "{1}, {0}" -f ($_.Recruiter -split ', ')
    $_ 
} |
Export-Csv "export.csv"

Foreach中的第一行拆分Recruiter字段中的名/姓,颠倒它们,然后将它们放回对象中。Foreach中的第二行只是将整个对象(包括您没有接触到的字段)放回管道中。

这篇关于在最后一栏中将姓氏、名字、姓氏更改为CSV PowerShell的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆