Steve Fenton

Run a console application with PowerShell

I have a DbUp console application that needed to be executed with PowerShell (in my case via Octopus Deploy – but this works in any case), but I wanted to be able to get the result when executing it. By default, running the “Database.exe” from PowerShell will open a new console window for the application to run, return immediately, and leave you with no output or error codes.

To solve this, you can use Start-Process with a few flags in order to get the output written into your PowerShell window, and to wait for completion before getting the exit code:

$databaseProcess = Start-Process Database.exe -PassThru -Wait -NoNewWindow

exit $databaseProcess.ExitCode

Written by Steve Fenton on