Запуск cmd.exe через процесс запуска, но не удается передать команду cmd.exe - PullRequest
0 голосов
/ 16 мая 2018

Я хочу запустить Groovy-скрипт с cmd.exe под другим пользователем.

Я использовал Start-Process, когда скрипт запускается, он просто открывает приглашение на экране с другим пользователем, но неНе обрабатывать $command.

Итак, мой вопрос: «Как передать команду после запуска cmd.exe с PowerShell?

Это то, что у меня до сих пор:

$username = "abc"
$pwd = ConvertTo -SecureString "xyz" -AsPlainText -Force
$cred = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $username $pw

$command = "filepath/.groovy"

try {
    Start-Process 'cmd' -Credential $cred -ArgumentList $command
    Write-Host $LASTEXITCODE
    if($LASTEXITCODE -ne 0) {
        throw "Error occured"
    } else {
        return 0
    }
} catch {
    Write-Error "Error Desc:$_Error.InnerException.Message";
}

1 Ответ

0 голосов
/ 16 мая 2018

На основе документации CMD вы можете указать параметр /c или /k для выполнения команды.

Start-Process 'cmd' -Credential $cred -ArgumentList "/c $command"
...