Запуск cmd.exe через процесс запуска, но не удается передать команду cmd.exe

Я хочу запустить отличный сценарий с 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";
}

2 ответа

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

Start-Process 'cmd' -Credential $cred -ArgumentList "/c $command"
      Start-Process 'cmd' -Credential $cred -ArgumentList "/c $command" -WorkingDirectory $startingDirectory
Другие вопросы по тегам