none
Como criar um Bat (.cmd) para rodar um script .ps1 RRS feed

  • Pergunta

  • bom dia amigos fiz um script com extensão .ps1 assim: Add-PSSnapin Microsoft.Exchange.Management.PowerShell.Admin
    export-mailbox -identity "andre" -PSTFolderPath c:\PSTFiles\andre.pst -confirm:$false, está rodando perfeito. Quando criei o seguinte esse cmd : powershell -command "& 'Exportar_pst.ps1'" lembrando que coloquei o arquivo.ps1 no caminho c:\windows\system32\windowspowershell\v1.0

    dá o seguinte erro : The term 'Exportar_pst.ps1' is not recognized as a cmdlet, function, operable p
    rogram, or script file. Verify the term and try again.
    At line:1 char:2
    + &  <<<< 'Exportar_pst.ps1'

     

    peguei este comando neste link : http://carlosem.wordpress.com/2010/01/05/como-agendar-scripts-do-exchange-management-shell/

    por favor, me ajudem !!

     

     

     

    • Tipo Alterado wagner_om quinta-feira, 16 de dezembro de 2010 11:46 Command invalido bat
    terça-feira, 14 de dezembro de 2010 12:36

Respostas

  • wagner_om,

      Na verdade, você deve utilizou esse comando: powershell.exe -command '"& C:\My_Scripts\Exportar_pst.ps1 "' quando na verdade era esse: powershell.exe -command "& 'C:\My_Scripts\Exportar_pst.ps1'"

      As aspas simples fecham o caminho (path) onde encontra-se o arquivo ps1 e as aspas duplas vem antes do & e depois das aspas simples no final do comando.

    Rafael Okamoto

    quarta-feira, 22 de dezembro de 2010 19:25

Todas as Respostas

  • amigo, aproveitando, fui fazer um cmd para chamar um script .ps1 nesse caminho  : powershell.exe -command ". `C:\My Scripts\Exportar_pst.ps1´ " e fica dando o seguinte erro:


    C:\cmd>powershell.exe -command ". `C:\My Scripts\Exportar_pst.ps1┤ "
    The term 'C:\My' is not recognized as a cmdlet, function, operable program, or
    script file. Verify the term and try again.
    At line:1 char:2
    + .  <<<< `C:\My Scripts\Exportar_pst.ps1┤

    C:\cmd>pause
    Pressione qualquer tecla para continuar. . .

     

    peguei isso nesse artigo : http://carlosem.wordpress.com/2010/01/05/como-agendar-scripts-do-exchange-management-shell/

     

    segunda-feira, 13 de dezembro de 2010 16:13
  • Prezado wagner_om,

      Por favor, tente realizar o  seguinte comando: powershell.exe -command "& 'C:\My Scripts\Exportar_pst.ps1' "

      Vale ressaltar que antes do caminho você deverá utilizar aspas simples.

    Espero ter ajudado.

    Rafael Okamoto
    ______________________________________________________________________________________________________________________

    Se esta resposta lhe

    segunda-feira, 13 de dezembro de 2010 19:42
  • Wagner,

    tenta assim:

    powershell -command "& '.\Exportar_pst.ps1'"


    JATOBA - MCITP Enterprise Messaging Administrator 2010 / MCTS Network Infrastructure 2008
    terça-feira, 14 de dezembro de 2010 12:45
    Moderador
  • oi amigos, os comandos deram o mesmo erro citado acima.
    terça-feira, 14 de dezembro de 2010 13:08
  • continua da esse erro: The term 'Exportar_pst.ps1' is not recognized as a cmdlet, function, operable p
    rogram, or script file. Verify the term and try again.
    At line:1 char:2
    + &  <<<< 'Exportar_pst.ps1'

    o que eu faço ??

    soccorro por favor, preciso fazer esse script

     

     

    terça-feira, 14 de dezembro de 2010 16:58
  • Wagner,

    pra que você precisa agendar isso???


    JATOBA - MCITP EMA 2010 / Is me man
    quarta-feira, 15 de dezembro de 2010 12:27
    Moderador
  • Para fazer backup e gerar em pst.
    quarta-feira, 15 de dezembro de 2010 12:38
  • Wagner,

    você pode fazer esse export de todas as caixas direto no servidor, não precisa excutar nas máquinas.

    Depois é só copiar o pst pros seus respectivos donos.


    JATOBA - MCITP EMA 2010 / Is me man
    • Marcado como Resposta wagner_om quinta-feira, 16 de dezembro de 2010 11:45
    quarta-feira, 15 de dezembro de 2010 13:12
    Moderador
  • acontece que uso o sbs 2008 com exchange integrado 64bits, e esse comando export-mailbox não roda no servidor, só em computador 32bits
    quarta-feira, 15 de dezembro de 2010 16:22
  • Me ajudem por favor !!
    quinta-feira, 16 de dezembro de 2010 11:47
  • olá amigos fiz um script com extensão .ps1 assim: Add-PSSnapin Microsoft.Exchange.Management.PowerShell.Admin export-mailbox -identity "user" -PSTFolderPath c:\PSTFiles\user.pst -confirm:$false, está rodando perfeito. Quando criei o seguinte cmd : powershell.exe -command "& 'C:\My Scripts\Exportar_pst.ps1' " dá o seguinte erro : O termo 'C:\My Scripts\Exportar_pst.ps1' não é reconhecido como cmdlet, função, programa operável ou arquivo de script. Verifique o termo e tente novamente. Em linha:1 caractere:2 + & <<<< 'C:\My Scripts\Exportar_pst.ps1' peguei este comando neste link : http://carlosem.wordpress.com/2010/01/05/como-agendar-scripts-do-exchange-management-shell/ por favor, me ajudem !!!!
    • Mesclado O Filipe - JatobáModerator segunda-feira, 27 de dezembro de 2010 16:01 USUÁRIO CRIANDO VÁRIOS TOPICOS COM O MESMO ASSUNTO, UTILIZANDO IDS DIFERENTES
    quarta-feira, 22 de dezembro de 2010 13:48
  • Olá wagner.om,

      Quando você criou o arquivo cmd você digitou as aspas simples antes do & e no fim do comando e aspas simples antes do C: e logo após o ps1? 

    powershell.exe -command "& 'C:\My Scripts\Exportar_pst.ps1' "

    Espero ter ajudado.

    Rafael Okamoto
    ___________________________________________________________________________________________________________________

    Se este post lhe foi útil, por favor, marque-o como resposta.

    quarta-feira, 22 de dezembro de 2010 14:52
  • oi amigo, mudei o comando como voce falou, veja a mensagem que apareceu :

     

    C:\cmd>powershell.exe -command '"& 'C:\My_Scripts\Exportar_pst.ps1'"'
    Token 'C:\My_Scripts\Exportar_pst.ps1' inesperado na expressão ou instrução.
    Em linha:1 caractere:36
    + '& 'C:\My_Scripts\Exportar_pst.ps1'' <<<<

    quarta-feira, 22 de dezembro de 2010 17:28
  • amigo fiz desta forma agora : C:\cmd>powershell.exe -command '"& C:\My_Scripts\Exportar_pst.ps1 "'
    & C:\My_Scripts\Exportar_pst.ps1

    tirei a aspas simpleas antes do C:\ o comando rodou e fechou a tela sem erros mas não chamou o arquivo.ps1  o que será ?
    quarta-feira, 22 de dezembro de 2010 17:48
  • wagner_om,

      Na verdade, você deve utilizou esse comando: powershell.exe -command '"& C:\My_Scripts\Exportar_pst.ps1 "' quando na verdade era esse: powershell.exe -command "& 'C:\My_Scripts\Exportar_pst.ps1'"

      As aspas simples fecham o caminho (path) onde encontra-se o arquivo ps1 e as aspas duplas vem antes do & e depois das aspas simples no final do comando.

    Rafael Okamoto

    quarta-feira, 22 de dezembro de 2010 19:25
  • oi amigo, ok... mas esse comando acima citado por voce eu fiz, e deu aquele erron no começo do post !!quanto coloco a aspas simples antes do c:\ da este erro :  

    O termo 'C:\My Scripts\Exportar_pst.ps1' não é reconhecido como cmdlet, função, programa operável ou arquivo de script. Verifique o termo e tente novamente. Em linha:1 caractere:2 + & <<<< 'C:\My Scripts\Exportar_pst.ps1'

    quinta-feira, 23 de dezembro de 2010 13:09
  • Consegui amigo, muito obrigado, fiz uma besteira, deixei um espaço no nome do arquivo ps1 por isso que dava este erro, o bat não encontrava o arquivo...

    muito obrigado

    quinta-feira, 23 de dezembro de 2010 14:19
  • wagner,

    não faz diferença onde você rode, tem que ser uma máqina 32bits sim, mas mesmo assim se você loga como administrator no pc, e conectar no shell do exchange, você pode exportar todas as caixas.

    não precisa ser especificamente no servidor.


    JATOBA - MCITP EMA 2010 / Is me man
    segunda-feira, 27 de dezembro de 2010 15:36
    Moderador
  • Wagner,

    outra coisa PARA DE CRIAR TÓPICOS DUPLICADOS, não interessa se você usa o seu nick "wagner_om" ou "wagner.om", basta um tópico para a dúvida!

    Obrigado.


    JATOBA - MCITP EMA 2010 / Is me man
    segunda-feira, 27 de dezembro de 2010 16:03
    Moderador