автоматически отключать приложение при его запуске с терминала

Как вы автоматически отменяете приложение после его запуска с терминала?

Например: если вы запустите терминал и запустите firefox приложение запустится, но когда вы закроете терминал, Firefox закроется. Чтобы избежать непреднамеренного закрытия приложений, которые были запущены с терминала, сначала можно поставить их в фоновом режиме с помощью амперсанта: firefox & который также восстанавливает возможность использования приглашения этого терминала. Затем вы можете отменить приложение с того же терминала, используя идентификатор процесса (PID) приложения, см. Следующий пример:

 $ firefox & $ ps | grep firefox 14917 pts/6 00:00:00 firefox $ disown 14917 

Приложение теперь выполняется независимо от терминала, который вы используете, и закрытие терминала больше не приведет к завершению работы приложения.

Но как вы можете делать это автоматически при каждом запуске приложения?

2 Solutions collect form web for “автоматически отключать приложение при его запуске с терминала”

Самый простой способ – выполнить:

 daemon firefox 

поэтому вы можете продолжать использовать / закрывать сам терминал

EDIT: лучший ответ был предоставлен IV.

Чтобы сделать это автоматически, вы можете использовать псевдоним bash. Если вы добавите следующие строки в ваш файл .bash_aliases в своем домашнем каталоге, вы можете запустить любое приложение my_application с терминала, автоматически помещая его в фоновый режим и затем отменяя его с этого терминала, используя команду s my_application :

 # start programs from shell but immediately disown them startAndDisown() { $1 & disown $! } alias s=startAndDisown 

Заметим, что $! автоматически возвращает PID последнего асинхронного задания.

  • +/- после выполнения задания в фоновом режиме
  • Как запустить длинный grep, вывести результат на меньшее и поместить все на задний план?
  • Повторение прогресса из фонового процесса без взлома
  • «. ~ / .bashrc "не устанавливает переменные, как ожидалось, в вызывающем скрипте
  • В чем разница между запуском «command &» и «command -D»
  • Невозможно создать фоновый процесс
  • Есть ли предел для процессов, которые я могу запустить в фоновом режиме?
  • Как использовать / отправлять сигналы в командной строке для любой программы (например, dd)
  • Как sh -e взаимодействует с &?
  • В zsh, как я могу быстрее отказаться от процесса переднего плана?
  • фоновая работа продолжает останавливаться
  • Linux и Unix - лучшая ОС в мире.