Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2008/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Powershell 将CSV中的测试字符串与_Powershell - Fatal编程技术网

Powershell 将CSV中的测试字符串与

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文件,其中包含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.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
另外,请注意,
每个对象的
{}
应该有花括号
{}
,而不是圆括号
()