PowerShell 和表达式中的 space

PowerShell and space in expression

我在 CSV 文件中有一个字段是名字。但是,我想将其重命名为 Name。

我有下面的代码。但是,我不确定如何处理 tN 之间的 space。

我试过使用引号和其他一些技巧,但到目前为止 none 已经奏效。 我需要做什么才能获得价值?

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

您可以使用单引号访问带有 space 的变量,例如。 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 中指定 encoding