1

素晴らしい 2013 年をお過ごしください。最初の PS Script に手を染めていますが、非常に一般的なエラーである「予期しないトークン」エラーに悩まされています。インターネットで検索しましたが、答えが見つからなかったので、助けてください。

    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

私の盲点がここにあることを知っている人はいますか?

4

1 に答える 1

4

5 行目の終了引用符が欠落している可能性があります。

$email += $_.Acternaam.Trim().ToLower() + "@test.nl"

12 行目に 1 つ欠けている可能性もあるようです。Powershell は、次の引用符までの残りのコードを文字列リテラルの一部と見なす場合があります。

于 2013-01-03T00:04:06.767 に答える