有一个伟大的2013年。我正在弄脏我的第一个PS脚本,我被困在一个非常常见的错误,“意外令牌”错误。我在互联网上搜索过,但找不到答案,所以请帮帮我。
If ($_.Voorvoegsel.Trim() -ieq "") {
$dn = $_.Voornaam.Trim() + " "
$dn += $_.Achternaam.Trim()
$email = $_.Voornaam.substring(0,1).ToLower() + "."
$email+= $_.Achternaam.Trim().ToLower() + "@test.nl
} Else {
$dn = $_.Voornaam.Trim() + " "
$dn += $_.Voorvoegsel.Trim() + " "
$dn += $_.Achternaam.Trim()
$email = $_.Voornaam.substring(0,1).ToLower() + "."
$email += $_.Voorvoegsel.Replace(" ","").ToLower()
$email += $_.Achternaam.Trim().ToLower() + "@test.nl
}
奇怪的是,它在else语句中的$ _.Voorvoegsel变量上出错:
Unexpected token '
$dn += $_.Voorvoegsel.Trim()
$dn += ' in expression or statement.
At C:\Users\Public\Documents\PSImportTest.ps1:42 char:12
+ $dn = $_ <<<< .Voornaam.Trim() + " "
+ CategoryInfo : ParserError: (
$dn += $_....m()
$dn += :String) [], ParseException
+ FullyQualifiedErrorId : UnexpectedToken
有谁看到我的盲点在这里?
答案 0 :(得分:4)
可能是您在第5行缺少最终报价:
$email += $_.Acternaam.Trim().ToLower() + "@test.nl"
看起来你也可能在第12行丢失了一个.Powershell可能认为代码的其余部分,直到下一个引号字符,是你的字符串文字的一部分。