Ответы пользователя по тегу bash
  • Как в линуксе запускать программы отдельно от терминала?

    @hrum
    1. команда пробел &
      • команда уходит в бэкграунд, но те консольные команды которые ожидают ввода могут там сразу в остановленном состоянии висеть.
      • команды, которые пишут в стандартный вывод, могут мусорить в текущую консоль если появляются ошибки во время выполнения
      • fg позволяет вытащить последнюю посланную в бэкграунд команду снова в текущую консоль (фореграунд)

    2. как здесь уже упоминали: nohup команда пробел &
      • амперсанд отправляет процесс в бэкграунд, консоль свободна
      • весь вывод команды направлен в файл nohup.out в текущей директории консоли

    3. тоже упомянули: screen команда
      • вернуться в текущую консоль Ctrl-a-d
      • вызвать запущенный скрин screen -r


    - Способ 1 хорош для графических програм,
    - способ 2 для обрабатывающих скриптов с долгим временем работы, но если скрипт надо убить придется использовать команду kill <номер процесса>
    - способ 3 позволяет удобно переключаться между несколькиму запущенными в бэкграунде командами, типа
    screen -r <номер скрина>

    А вообще удобно пользоваться чем нибудь типа Tilix - все на виду и под рукой.
    Ответ написан
    Комментировать