Запуск 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