2017-04-11 32 views
3

我有一个名为CSV的字段,名字是。但是,我想将其重命名为Name。PowerShell和表达式中的空格

我在下面有下面的代码。但是,我不知道如何处理tN之间的空间。

我试过使用引号和其他一些技巧,但迄今为止没有工作。 我需要做些什么来获取值?

Import-Csv .\Downloads\addata.csv | Select @{n="Name";e={$_.First Name}} 

回答

5

您可以使用单引号的空间,E访问的变量。 G。 $_.'First Name'

然而,你可能想保留现有列,所以你可能会使用Get-Content cmdlet来获取内容,并使用一个简单的正则表达式的第一行内更换色谱柱:

$content = Get-Content '.\Downloads\addata.csv' 
$content[0] = $content[0] -replace 'First Name', 'Name' 
$content | Set-Content '.\Downloads\addata.csv' 

注意:您可能需要在Set-Content cmdlet中指定编码