В Windows PowerShell всегда будет синхронно ждать завершения консольного приложения.Для приложений Win32, если вывод команды не перенаправлен, то команда будет выполняться асинхронно.Если он перенаправлен, PowerShell будет ждать завершения команды.Например, запуск notepad
из командной строки приведет к тому, что блокнот будет работать асинхронно с PowerShell, но если вы запустите notepad | out-null
, то PowerShell будет ожидать выхода из процесса блокнота, прежде чем продолжить.В Linux или MacOS нет различий ОС между приложениями «windows» и «не-windows», поэтому PowerShell всегда ожидает завершения дочернего процесса.Таким образом, если приложение не переключается в фоновый режим (что делают многие инструменты с графическим интерфейсом), на этих платформах вы должны явно запускать процесс как фоновое задание, используя &
, например, xedit &
.
.