(Linux) Как запустить экземпляр уже работающего приложения в режиме блокировки?

(Linux) Как запустить экземпляр уже работающего приложения в режиме блокировки?

Для пояснения я использую Firefox, но это происходит и с другими приложениями, вот скрипт:

$ cat ff.sh
#!/bin/sh
firefox http://superuser.com/
echo "$?"

Допустим, Firefox закрыт, когда я запускаю

$ ./ff.sh

скрипт блокируется до тех пор, пока я не закрою Firefox. Только после этого я получаю код выхода.

0

$ 

Теперь предположим, что Firefox уже запущен. Когда я запускаю скрипт, он открывает новую вкладку Firefox и работает до конца. (А Firefox продолжает работать.)

$ ./ff.sh
0

$ 

Как мне добиться того, чтобы поведение было таким же, как в первом примере, независимо от начального условия? По сути, я хочу добиться противоположного

$ cmd &

решение1

Выглядит так, будто он работал асинхронно, хотя на самом деле это не так.
При запуске Firefox проверяет наличие существующего экземпляра, если находит, делегирует управление существующему экземпляру и завершает себя. Отсюда и путаница.

Связанный контент