Powershell 将CSV中的测试字符串与
我有一个CSV文件,其中包含first.last name格式的用户别名 我试图一个接一个地提取这些别名,并将它们与我们的域合并,以创建它们的电子邮件地址 这是我的密码:Powershell 将CSV中的测试字符串与,powershell,Powershell,我有一个CSV文件,其中包含first.last name格式的用户别名 我试图一个接一个地提取这些别名,并将它们与我们的域合并,以创建它们的电子邮件地址 这是我的密码: $CSV = Import-CSV "\\this\is\thepath\to\the\csv.csv" $domain = "@domain.co.uk" $CSV.Alias | ForEach-Object ( Write-Host ($CSV.Alias + $domain) ) 我需要的输出是: John
$CSV = Import-CSV "\\this\is\thepath\to\the\csv.csv"
$domain = "@domain.co.uk"
$CSV.Alias | ForEach-Object (
Write-Host ($CSV.Alias + $domain)
)
我需要的输出是:
John.Doe@domain.co.uk Jane.Doe@domain.co.uk John.Smith@domain.co.uk
厕所。Doe@domain.co.uk简。Doe@domain.co.uk厕所。Smith@domain.co.uk
然而,这是输出的内容:
John.Doe Jane.Doe John.Smith @domain.co.uk
John.Doe Jane.Doe John.Smith@domain.co.uk
试试这个:
$CSV = Import-CSV '\\this\is\thepath\to\the\csv.csv'
$domain = '@domain.co.uk'
$CSV.Alias | ForEach-Object {
Write-Host $_ + $domain
}
如果我将其应用于此输入文件:
Alias
John.Doe
Jane.Doe
John.Smith
我得到这个输出
John.Doe@domain.co.uk
Jane.Doe@domain.co.uk
John.Smith@domain.co.uk
我所做的只是纠正你尝试中的两个错误,这两个错误是在对问题的评论中指出的。另外,我做了两个表面上的改变
一个表面上的变化是在几个使用双引号的地方使用单引号。如果不需要双引号调用的转换,请不要使用它们。使用单引号代替。这只是防御性编码
另一个表面上的变化是删除了Write Host参数周围的括号。它在没有括号的情况下工作。有人可能会说括号应该放在里面,这样更容易阅读。嗯
$CSV.Alias+$domain
->$\+$domain
另外,请注意,每个对象的{}
应该有花括号{}
,而不是圆括号()