executa o comando powershell a partir do cmd

8

como posso executar este comando a partir do cmd:

powershell.exe "(get-process | ? {$_.Description -eq "Sysinter Process Explorer"}) | select processname | out-file $env:APPDATA\example.txt"

eu ainda recebo este erro:

You must provide a value expression on the right-hand side of the '-eq' operato r. At line:1 char:37 + (get-process | ? {$_.Description -eq <<<< Sysinternals Process Explorer}) | select processname | out-file $env:APPDATA\example.txt + CategoryInfo : ParserError: (:) [], ParentContainsErrorRecordEx ception + FullyQualifiedErrorId : ExpectedValueExpression

    
por Qassam Mahmoud 24.05.2016 / 12:10

1 resposta

12
powershell -command "get-process | ? {$_.Description -eq 'Sysinter Process Explorer'} | select processname | out-file $env:APPDATA\example.txt"

basicamente você tem um comando powershell e cole-o entre essas citações para chamá-lo de CMD

powershell -command " #PasteCodeHere "

dentro dessas citações você tem que trabalhar com ' senão irá interromper seu parâmetro de comando.

Editar: informações adicionais:

muitas vezes você encontrará isso: powershell -command "& 'somestuff'"

o & é usado para chamar um arquivo. quando você está usando apenas um comando & é unnessecary, quando você quer chamar um script, você deve usá-lo.

powershell -command "& 'C:\foobar.ps1'"

Você também pode usar powershell -file C:\file.ps1 para chamar um script

    
por 24.05.2016 / 16:24