none
Comando funciona, porém script com o comando não funciona (Set-Mailbox) RRS feed

  • Pergunta

  • Boa tarde!

    É a primeira vez que posto uma dúvida aqui, desde já peço desculpas se fiz de maneira incorreta.

    Fiz um script simples para definir atributos customizados nas contas do Exchange Online (Office 365) via Powershell, porém quando executo o script é retornado um erro; o interessante é que se copio a linha de comando que está no script e colo direto no powershell, ela executa sem nenhum erro. Este é o comando que preciso executar:

    Import-Csv -Path "C:\scripts\Atributos.csv" | foreach {Set-Mailbox –Identity $_.alias –CustomAttribute1 $_.a1 –CustomAttribute2 $_.a2 –CustomAttribute3 $_.a3 –CustomAttribute4 $_.a4 –CustomAttribute5 $_.a5 –CustomAttribute6 $_.a6 –CustomAttribute7 $_.a7 –CustomAttribute8 $_.a8 –CustomAttribute9 $_.a9 –CustomAttribute10 $_.a10 –CustomAttribute11 $_.a11}

    Meu CSV possui o seguinte conteúdo (exemplo):

    alias,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11
    douglas.cruz,CLT,,,,,,PR,,,ESCRITÓRIO,

    Quando executo o script, recebo o seguinte erro:

    PS C:\scripts> .\ps1\teste.ps1
    A positional parameter cannot be found that accepts argument 'CLT'.
        + CategoryInfo          : InvalidArgument: (:) [Set-Mailbox], ParameterBin
       dingException
        + FullyQualifiedErrorId : PositionalParameterNotFound,Set-Mailbox
        + PSComputerName        : ps.outlook.com


    Quando copio a linha de comando e colo diretamente no powershell, funciona perfeitamente, ou seja, o comando aparentemente é simples e está correto.

    Alguém já passou por isto, ou sabe como fazer o script funcionar?

    Agradeço desde já pelo apoio!

    Douglas Cruz

    terça-feira, 15 de maio de 2018 19:38