Eu tenho um comando que eu criei e armazenei em uma variável no PowerShell. Este comando funciona se eu fizer um host de gravação e copiar e colar em uma cmd.exe
janela padrão .
Como executo esse comando de dentro do meu script?
Eu tentei várias combinações de Invoke-Command ou Invoke-Expression sem sorte.
Foi assim que construí a variável:
$cmd1 = $arcprg + $arcdir + "\" + $site1 + "-" + $hst + "-" + $yesterday + ".zip " + $logpath1 + "u_ex" + $yesterday + ".log"
É assim que a variável se parece se for impressa na tela:
7z.exe a -tzip c:\arc_logs\site-host-at-web1-100827.zip c:\inetpub\logs\logfiles\w3svc1\u_ex100827.log
fonte
Tente chamar seu comando com
Invoke-Expression
:Aqui está um exemplo de trabalho na minha máquina:
iex
é um alias paraInvoke-Expression
que você possa fazer:Para obter uma lista completa: Visite https://ss64.com/ps/ para obter mais informações
Powershell
.Boa sorte...
fonte
'C:\Program Files\7-zip\7z.exe'
, eu poderia executar o 7z.exe.