Перейти к содержимому

Как запустить процесс в фоне linux

  • автор:

Как запустить команду в фоновом режиме в Linux

Запуск команд или процессов в фоновом режиме в системе Linux становится обычной задачей, если вам нужно освободить терминал или отключиться от сеанса SSH. Это особенно актуально для команд, которые выполняются в течение длительного времени либо для прослушивания событий, либо для выполнения длительной задачи.

В Linux есть несколько вариантов запуска команд в фоновом режиме. В этом руководстве мы рассмотрим несколько различных методов и покажем вам, как их использовать на примерах.

В этом уроке вы узнаете:

  • Как перевести запущенную команду в фоновый режим
  • Как запустить команду в фоновом режиме

Перевод процесса на задний план и перемещение его на передний план

Поместите выполняемую команду в фоновый режим

Когда вы выполняете команду, которая должна продолжать работать в течение длительного времени, проблема в том, что ваш текущий терминал выделяется для этой команды. Вы не можете продолжать использовать терминал, а также не можете его закрыть, поскольку это завершит выполнение команды, которая в данный момент выполняется.

Если у вас запущена команда и вам нужно перевести ее в фоновый режим, чтобы освободить терминал, вы можете нажать Ctrl + Z на клавиатуре, чтобы остановить процесс. Вот пример.

$ sleep 10000 ^Z [1]+ Stopped sleep 10000

Чтобы просмотреть список заданий в фоновом режиме, используйте команду jobs .

$ jobs -l [1]+ 1650 Stopped sleep 10000

Чтобы вернуть задание на передний план, мы можем использовать команду fg .

Если бы у нас было несколько остановленных заданий, нам нужно было бы использовать знак процента и указать идентификатор задания, чтобы вернуть соответствующее задание на передний план.

$ fg %1

Отлично, теперь мы можем перевести процессы в фоновый режим и вернуть их позже, когда захотим. Но что, если мы хотим, чтобы команда продолжала выполняться, пока она находится в фоновом режиме? Для этого мы можем использовать команду bg , за которой следует амперсанд и идентификатор задания. Следующая команда возобновит остановленное задание, оставив его в фоновом режиме.

$ bg %1 [1]+ sleep 10000 &

Теперь мы видим, что процесс все еще находится в фоновом режиме, но показывает статус «работает», а не «остановлен».

$ jobs -l [1]+ 1650 Running sleep 10000 &

Есть еще одна вещь, которую следует иметь в виду. Вы не можете закрыть текущий терминал, иначе фоновые задания закроются. Если вам нужно закрыть терминал и вы не хотите, чтобы эти команды останавливались, вам нужно «отказаться» от заданий. Если у вас есть только одно задание в фоновом режиме, будет работать следующая команда:

$ disown

Если у вас их несколько, вам нужно будет указать идентификатор задания.

$ disown %1

Вы больше не увидите задание в таблице заданий при выполнении команды jobs . Теперь можно безопасно закрыть терминал, и ваша команда продолжит работу.

$ jobs -l

Вы по-прежнему можете следить за своей текущей командой, используя команду ps.

$ ps aux | grep sleep linuxco+ 1650 0.0 0.0 8084 524 pts/0 S 12:27 0:00 sleep 10000

А если вы хотите остановить выполнение команды, вы можете использовать команду kill и указать идентификатор процесса.

$ kill 1650

Запуск команды в фоновом режиме

Теперь мы увидели, как перевести работающий процесс в фоновый режим и вызвать его позже. Но у нас также есть возможность сначала просто запустить команду в фоновом режиме. Все, что вам нужно сделать, это поставить амперсанд в конце любой команды Linux.

$ sleep 10000 & [1] 1900

Как и раньше, мы можем увидеть задание, указанное с помощью команды jobs . Однако на этот раз задание уже запущено, и нам не пришлось вручную запускать его в фоновом режиме.

$ jobs -l [1]+ 1900 Running sleep 10000 &

Закройте терминал и продолжайте фоновую работу.

В предыдущем примере мы уже видели, как мы можем использовать команду disown , чтобы гарантировать, что команда продолжит выполнение после закрытия терминала. Другой вариант — команда nohup .

nohup сообщает процессу игнорировать любые сигналы SIGHUP (зависание), которые он получает. Сигнал SIGHUP отправляется фоновому заданию всякий раз, когда текущий терминал закрывается. Таким образом, мы можем выполнить задание в фоновом режиме, закрыть терминал и по-прежнему видеть его работающим в фоновом режиме. Вот пример.

$ nohup sleep 10000 & [1] 1908 nohup: ignoring input and appending output to 'nohup.out'

Мы закрыли терминал и снова открыли его, затем выполнили следующую команду, которая показывает, что команда все еще выполняется.

$ ps aux | grep sleep linuxco+ 1908 0.0 0.0 8084 524 ? S 13:05 0:00 sleep 10000

Использование экранной команды

До сих пор мы рассматривали стандартные методы Linux для запуска команд в фоновом режиме. Однако есть также дополнительные пакеты программного обеспечения, которые можно использовать. Возможно, самой популярной будет команда screen.

Вы можете увидеть вышеупомянутую ссылку для получения инструкций по установке и подробного использования, но суть ее такова:

    Запустите команду screen , чтобы запустить новый «экран». При желании добавьте параметр -S , чтобы дать ему имя.

$ screen -S mycommand
$ /path/to/myscript.sh
$ screen -ls There is a screen on: 2741.mycommand (04/08/2021 01:13:24 PM) (Detached) 1 Socket in /run/screen/S-linuxconfig.
$ screen -r 2741

Заключительные мысли

В этом руководстве мы увидели несколько различных способов запуска команды в фоновом режиме в Linux. Сюда входят стандартные утилиты Linux и команда screen. Мы также увидели, как управлять фоновыми процессами, перемещая задания на передний план, повторно подключая экраны и отключая фоновые процессы.

Все права защищены. © Linux-Console.net • 2019-2024

Как запустить команду Linux в фоновом режиме и отсоединить процесс в терминале

В этом руководстве мы узнаем, как запускать команду в фоновом режиме и как отсоединять процессы от терминала.

Предпосылки:

Для выполнения действий, описанных в этом руководстве, вам потребуются следующие компоненты:

  • Функциональная система Linux. Узнайте больше о настройке виртуальной машины Ubuntu в VirtualBox.
  • Доступ к пользователю без полномочий root с разрешением sudo.

Запуск процессов из терминала

Всякий раз, когда выполняется команда, процессы запускаются под терминалом. Если терминал закрыт, все связанные с ним процессы автоматически завершаются. В определенных ситуациях это может быть неудобно. Например:

Для решения этих проблем есть несколько вариантов:

  • Запуск процессов в фоновом режиме
  • Отключение процессов от терминала

Процессы, работающие в фоновом режиме, не будут перегружать вывод терминала. Более того, терминал может свободно запускать дополнительные команды. Для отдельных процессов они не завершатся, даже если терминал закрыт.

Запуск процессов в фоновом режиме

Во многих случаях выполнение команды может занять некоторое время. Как правило, пользователь вынужден ждать завершения команды. Например, когда вы используете текстовый редактор, оболочка недоступна, пока редактор не будет закрыт.

Для демонстрации используем команду «yes»:

Способ 1:

Есть несколько способов перевести запущенный процесс в фоновый режим.

Во-первых, мы останавливаем процесс, не завершая его. Для этого выполните следующую команду и нажмите «Ctrl + Z»:

$ yes «hello world» > / dev / null

Теперь запустите команду «bg», чтобы отправить процесс в фоновом режиме:

После перевода в фоновый режим процесс возобновляется. Следующая команда выводит список всех запущенных в фоновом режиме заданий:

Способ 2:

В предыдущем методе процесс сначала запускался на переднем плане. Мы приостанавливали процесс, переводили его в фоновый режим, затем возобновляли. Вместо этого мы можем запустить процесс прямо в фоновом режиме.

Для этого добавьте знак «&» в конце команды:

$ yes «oh long johnson» > / dev / null &

Здесь порожденные процессы автоматически запускаются в фоновом режиме. Для проверки проверьте список фоновых заданий:

Способ 3:

Мы также можем запускать процессы в фоновом режиме с помощью tmux, мощного мультиплексора, который может управлять несколькими сеансами терминала в одном окне. Он не предустанавливается в Linux. Однако он доступен для всех основных дистрибутивов Linux. Узнайте больше об установке tmux в Linux.

В следующем примере мы используем tmux для проверки связи с целью и регистрации вывода:

$ tmux new -d ‘ping -c 9 127.0.0.1 > ping.log’

Файл журнала проверяет, успешно ли выполняется команда:

$ cat ping.log

Это всего лишь один пример того, что может сделать tmux. Узнайте больше о tmux с примерами.

Возвращение заданий на передний план

Если вы хотите вернуть задание на передний план, мы используем команду «fg». Нам также нужен номер задания из команды jobs.

Во-первых, определите работу, которую вы хотите вывести на передний план:

Теперь используйте команду «fg»:

Отключение процессов от терминала

Любой процесс, связанный с терминалом, завершается после закрытия терминала, независимо от того, запущен ли он на переднем плане или в фоновом режиме. Чтобы избежать завершения процесса, мы отделяем целевой процесс от терминала/оболочки.

Способ 1:

Чтобы отказаться от процесса, нам сначала нужен фоновый процесс:

$ yes «qwerty» > / dev / null &

Проверьте список запущенных фоновых заданий:

Запишите серийный номер целевого фонового задания. Теперь используйте команду «disown», чтобы отсоединить его от терминала:

Целевое задание теперь должно исчезнуть из списка заданий:

Однако вы все еще можете видеть процесс, работающий в фоновом режиме:

Способ 2:

Другой способ отсоединить процесс от родительского терминала — использовать команду «nohup». Он поддерживает работу процесса в фоновом режиме даже после закрытия терминала.

Использование «nohup» выглядит следующим образом:

Убедитесь, что задание создано успешно:

Способ 3:

Этот метод полностью отсоединяет целевой процесс. Это более эффективный способ отсоединения приложений с графическим интерфейсом.

Например, чтобы запустить Firefox и полностью отсоединить его от терминала, используйте следующую команду:

$ firefox / dev / null &

  • /dev/null — это специальное устройство в Linux, которое избавляется от любых записанных на него данных.
  • В предыдущей команде входные данные считываются, а выходные данные отправляются в /dev/null. Узнайте больше о других способах использования файла /dev/null.

Заключение

Мы продемонстрировали различные способы запуска процесса в фоновом режиме. Мы также продемонстрировали способы отсоединения процесса от родительского терминала. Эти приемы могут быть полезны при работе с терминалом или запуске скрипта.

Если вам нужно запустить определенные команды по определенному шаблону, мы можем разгрузить его как службу systemd. Для удаленных машин мы также можем использовать сторонние инструменты, такие как Ansible, для автоматизации почти всего.

Все права защищены. © Linux-Console.net • 2019-2024

Как запускать команды Linux в фоновом режиме

Выполнение команд Linux в фоновом режиме позволяет пользователю продолжать выполнение других задач, пока команда все еще выполняется. Есть несколько способов запустить команду в фоновом режиме; один из простых способов — добавить амперсанд (&) в конце командной строки.

Как только процесс настроен на работу в фоновом режиме, мы можем получить к нему доступ с помощью команды jobs. В этой статье представлены все различные способы запуска команды в фоновом режиме.

Список различных способов запуска фонового процесса выглядит следующим образом:

    • Добавление знака амперсанда (&)
    • Использование команды bg

    Ниже приведены подробные сведения обо всех методах запуска фонового процесса:

    1: Использование знака амперсанда (&)

    В Linux Ampersand (&) — это оператор оболочки, который отправляет команду в фоновом режиме как отдельный процесс. При объединении амперсанда (&) с командой она будет выполняться как фоновый процесс, позволяя оболочке немедленно продолжить обработку других команд.

    Синтаксис для фонового процесса, использующего знак амперсанда:

    Символ амперсанда всегда добавляется в конце команды с одним пробелом между «&» и последним символом команды.

    Например, создайте процесс сна на 40 секунд.

    Как мы видим, терминал выполняет команду sleep и не позволяет нам выполнять какие-либо другие задачи.

    Теперь нажмите «Ctrl + Z», чтобы остановить этот процесс. Далее, на этот раз мы запустим ту же команду сна, но с помощью оператора амперсанда установим ее в фоновом режиме.

    Сейчас этот процесс находится в фоновом режиме. Чтобы перечислить фоновый процесс, используйте:

    Теперь убейте этот фоновый процесс, используя:

    $ kill -9 [ job-ID ]

    Например, чтобы убить текущий запущенный спящий процесс, используйте:

    $ kill -9 6149

    Теперь спящий процесс останавливается, чтобы подтвердить список фоновых запущенных процессов.

    Вот еще один пример использования знака &ampersand с командой gedit.

    Например, если мы откроем текстовый редактор gedit непосредственно с помощью терминала, мы будем вынуждены использовать оболочку для другой работы, иначе нам нужно будет сначала остановить текущий процесс.

    Использование вышеуказанной команды откроет текстовый редактор, который откроет его перед терминалом.

    Но после использования «&» в конце команды gedit оболочка может свободно использоваться для других процессов:

    2: Использование команды «bg»

    Команда bg — это второй способ запуска команд в фоновом режиме. Эта команда позволяет пользователю продолжать работу в терминале, пока процесс выполняется в фоновом режиме, освобождая терминал для других задач. Команда bg используется для длительного фонового процесса, который запускается даже в том случае, если пользователь выходит из системы.

    Как и знак амперсанда, нам не нужно беспокоиться о его добавлении в команду каждый раз, просто отправьте текст bg на терминал. Он запустит процесс в фоновом режиме и освободит терминал для использования в будущем.

    Например, давайте воспользуемся предыдущим примером и отправим команду сна, используя:

    Теперь процесс запущен, и терминал недоступен для использования. Чтобы использовать команду bg и отправить этот процесс в фоновом режиме, мы должны сначала остановить текущий исполняемый процесс, нажав «Ctrl + Z » и выполнив эту команду:

    После отправки команды bg процесс сна начал продолжаться в фоновом режиме. В конце мы видим амперсанд «&», указывающий, что текущий процесс находится в фоновом режиме.

    Чтобы проверить команду запуска фонового процесса:

    Чтобы проверить команду, работающую в фоновом режиме, используйте:

    Чтобы убить текущий процесс, используйте его идентификатор задания с командой kill. Чтобы проверить идентификатор задания, запустите:

    Узнав идентификатор задания, убейте процесс, используя:

    $ kill -9 [ job-ID ]

    Например, чтобы убить текущий запущенный спящий процесс, используйте:

    $ kill -9 6584

    Чтобы убедиться, что процесс убит или нет, снова запустите команду jobs:

    Мы видим, что процесс сна больше не работает в фоновом режиме:

    3: Использование команды nohup

    Команда nohup занимает третье место в нашем списке запущенных фоновых процессов в Linux. Команда означает «не зависать» и используется для предотвращения завершения процесса до завершения сеанса терминала. Когда процесс выполняется с помощью nohup, он продолжает работать, даже если пользователь выходит из системы, а выходные данные процесса перенаправляются в файл с именем nohup.out.

    Команда nohup для непрерывного пинга Google в фоновом режиме и вывод перенаправляется в текстовый файл GooglePing.txt:

    $ nohup ping google.com > GooglePing.txt &

    После написания этой команды мы видим, что терминал свободен и фоновый процесс для непрерывного пинга Google работает в фоновом режиме.

    Чтобы получить доступ к файлу журнала, мы можем использовать следующую команду:

    $ cat GooglePing.txt

    Доступ к файлу журнала также можно получить с помощью графического интерфейса на главном экране.

    4: Использование команды disown

    Команда disown удаляет процесс из оболочки и запускает его в фоновом режиме. Когда процесс отменяется, он больше не связан с терминалом и продолжает работать даже после выхода пользователя из системы или закрытия терминала.

    Ранее мы использовали команду с амперсандом «&», которая переводит процесс в фоновый режим после его выполнения, но когда мы закрываем оболочку, процесс завершается. Чтобы избавиться от этой команды disown, есть.

    Команда disown не может работать независимо, но в фоновом режиме должен работать хотя бы один процесс.

    Запустите приведенную ниже команду со знаком амперсанда &, после чего ваша команда перейдет в фоновый режим.

    $ ping google.com > GooglePing.txt &

    После того, как файл создан, мы можем перечислить его с помощью команды jobs.

    Теперь наш процесс работает в фоновом режиме, чтобы отключить его от использования терминалом:

    Запустите команду jobs еще раз, чтобы подтвердить отсоединение процесса от терминала:

    Поскольку наш процесс в настоящее время запущен, но он больше не отображается в терминале:

    Чтобы подтвердить наш процесс, мы можем использовать команду cat для доступа к этому файлу ping:

    $ cat GooglePing.txt

    Мы успешно отсоединили этот процесс от терминала, но он все еще работает в фоновом режиме.

    5: Использование утилиты tmux

    Tmux — это своего рода терминальная утилита-мультиплексор. Используя tmux, мы можем создать несколько сеансов терминала в одной оболочке. Он обеспечивает возможность запуска процессов в фоновом режиме.

    Чтобы запустить фоновый процесс в Tmux, вы можете создать новый сеанс, а затем отсоединиться от него, используя комбинацию клавиш Ctrl-b, а затем d.

    Чтобы установить утилиту tmux в Ubuntu и Linux Mint, используйте:

    $ sudo apt install tmux

    Для установки в Fedora запустите:

    $ sudo dnf install tmux

    Для установки в Arch Linux запустите:

    $ sudo pacman -S tmux

    Теперь запустите команду tmux, чтобы открыть новый терминал:

    Чтобы создать новый сеанс tmux, используйте:

    $ tmux new -s [ session_id ]

    Чтобы перечислить все сеансы tmux, используйте:

    Для уничтожения сеанса tmux используйте команду:

    $ tmux kill-session -t [ session_id ]

    Например, чтобы убить сеанс tmux 0 , используйте:

    $ tmux kill-session -t 0

    Здесь мы перечислили текущий активный сеанс tmux и убили его с помощью приведенной выше команды:

      • Чтобы отключиться от сеанса tmux, нажмите «Ctrl+B+D».
      • Чтобы получить список всех команд, нажмите «Ctrl+B+? .
      • Для переключения между окнами tmux нажмите «Ctrl+B+O».

      Чтобы разделить терминал tmux по вертикали, нажмите «Ctrl+B» и введите %.

      Чтобы вернуться к основному терминалу из tmux, используйте:

      Заключение

      Запуск фоновых приложений в Linux — это мощная функция, которая позволяет пользователям продолжать выполнять свои длительные задачи даже после выхода из терминала или закрытия окна. Обычно для отправки процесса в фоновом режиме используется знак амперсанд & или команда bg. Однако мы также можем использовать команду nohup или disown для отключения процесса от терминала. Наконец, мы можем использовать утилиту tmux для создания нескольких терминалов и запуска фоновых процессов, не нарушая работу терминала.

      Все права защищены. © Linux-Console.net • 2019-2024

      Как управлять фоновыми процессами в Linux

      Светящаяся башня на фоне более темных высотных зданий ночью.

      Если вы только начинаете работать с Linux и уже пробовали вводить команды в терминале, вы могли заметить, что для ввода каждой новой команды вам приходится ждать, пока уже начатый процесс завершится. Так происходит потому, что по умолчанию при запуске команды процесс начинается в активном окне терминала, — пишет сайт hexx.in.ua в своем переводе статьи «How to manage background processes in Linux».

      Что делать, когда надо запустить другую команду? Можно открыть еще одну сессию терминала, но можно обойтись и без этого. Давайте рассмотрим, как управлять фоновыми и приоритетными процессами в Linux.

      Но сначала давайте разберемся, что такое фоновый и приоритетный процесс.

      Приоритетный процесс — это та задача, которую в настоящее время выполняется в активном окне терминала. То есть, приоритетным в каждой сессии терминала может быть только один процесс. Прежде чем начать новый приоритетный процесс, придется подождать окончания предыдущего.

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

      Фоновый процесс — это процесс или задача, которые выполняются в фоне и не требуют взаимодействия с пользователем. Фоновых процессов может быть много.

      Наиболее распространенный пример процесса, работающего в фоне, — веб-сервер.

      Давайте попробуем запустить команду vmstat.

      shaikh@shaikhu-com:~$ vmstat 5 procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu----- r b swpd free buff cache si so bi bo in cs us sy id wa st 0 0 0 3045156 167484 2449380 0 0 80 56 469 1138 19 5 76 0 0 1 0 0 3044644 167492 2450152 0 0 0 92 299 604 2 1 98

      Эта команда показывает использование памяти и cpu в режиме реального времени. В качестве опции указываем 5 — это задержка перед выводом обновленных данных. Команда каждые 5 секунд будет выводить новую строку с данными, пока вы не прервете ее выполнение (пока не завершите начатый процесс). Для этого надо нажать CTL + C. А если вы хотите поставить процесс на паузу или остановить, надо нажать CTL + Z.

      bg: перемещение задачи в фон

      Предположим, вы хотите переместить в фон задание, выполнение которого уже началось (чтобы можно было делать в терминале что-то другое). Для этого надо нажать CTL + Z, а затем запустить команду bg (сокращение от background).

      Давайте запустим выполнение какой-то приоритетной задачи. Например, будем записывать CPU-статистику в файл. Как видите, мы не можем ввести какую-то другую команду, поскольку эта задача выполняется в активном окне терминала (оно приоритетное).

      shaikh@shaikhu-com:~$ vmstat 5 >> vmstat.txt

      Давайте поставим эту задачу на паузу, нажав CTL + Z, а затем выполним команду bg.

      shaikh@shaikhu-com:~$ vmstat 5 >> vmstat.txt ^Z [1]+ Stopped vmstat 5 >> vmstat.txt shaikh@shaikhu-com:~$ bg [1]+ vmstat 5 >> vmstat.txt & shaikh@shaikhu-com:~$

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

      Как сразу приступить к выполнению команды в фоне

      Чтобы процесс запустился в фоне, после команды надо поставить знак &:

      команда &
      shaikh@shaikhucom:~$ sleep 400 & [2] 11122 shaikh@shaikhucom:~$

      jobs: команда для проверки задач в текущем терминале

      С помощью этой команды можно вывести все задачи, которые запущены в текущем терминале.

      shaikh@shaikhucom:~$ jobs [1]- Running vmstat 5 >> vmstat.txt & [2]+ Running sleep 400 & shaikh@shaikhucom:~$

      Номера в квадратных скобках [n] это номера (или идентификаторы) задач. Нумерация начинается с единицы. Знак «+» указывает на процесс, который был запущен последним, а «-» — на предпоследний процесс.

      Если вы хотите увидеть идентификаторы самих процессов, надо использовать опцию -l:

      shaikh@shaikhucom:~$ jobs -l [1]- 10216 Running vmstat 5 >> vmstat.txt & [2]+ 11122 Running sleep 400 & shaikh@shaikhucom:~$

      Номера 10216 и 11122 — это идентификаторы процессов.

      Возможные опции, которые можно использовать с командой jobs:

      • -l — вывести список идентификаторов процессов в дополнение к обычной информации
      • -n — перечислить только процессы, изменившие статус с последнего сообщения
      • -r — ограничить вывод только запущенными задачами
      • -s — ограничить вывод только остановленными задачами.

      kill% n: прекращение выполнения задания с идентификатором n

      Для прерывания заданий используется команда kill. Чтобы указать, какое именно задание надо прекратить выполнять, используется знак %, за которым следует номер задания.

      haikh@shaikhu-com:~$ jobs [1]- Running vmstat 5 >> vmstat.txt & [2]+ Running sleep 400 & shaikh@shaikhucom:~$ kill %2 shaikh@shaikhucom:~$ jobs [1]+ Running vmstat 5 >> vmstat.txt & shaikh@shaikhucom:~$

      Как видите, теперь у нас только один процесс в фоне. Причем знак «+» показывает, что это последняя из запущенных задач.

      fg: команда для перемещения задачи в интерактивный режим

      Чтобы переместить задачу в активное окно терминала (на передний план), используется команда fg (сокращение от foreground). По умолчанию (то есть, если не указать никаких опций), на передний план переместится процесс, который был запущен последним.

      shaikh@shaikhucom:~$ jobs [1] Running vmstat 5 >> vmstat.txt & [2]- Running sleep 400 & [3]+ Running sleep 500 & shaikh@shaikhucom:~$ fg sleep 500 [2] Done sleep 400 shaikh@shaikhucom:~$

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

      shaikh@shaikhucom:~$ fg %2

      Команда ps позволяет увидеть все процессы

      Чтобы увидеть все активные процессы, используйте команду ps. При этом можно добавить следующие опции:

      • ps ax — чтобы увидеть все процессы, недавно активные в системе. Список будет очень длинным, поэтому добавьте в конвейер less или more.
      • ps T — чтобы увидеть все процессы, выполняемые в текущем терминале.
      shaikh@shaikhucom:~$ ps T PID TTY STAT TIME COMMAND 5786 pts/0 Ss 0:00 bash 10216 pts/0 S 0:00 vmstat 5 12983 pts/0 R+ 0:00 ps T shaikh@shaikhucom:~$

      Выводы

      Мы рассмотрели команды, которые позволяют управлять фоновыми и приоритетными процессами:

      • bg и fg — для перемещения задач в фон и обратно, в активное окно;
      • jobs — для вывода списка активных задач в текущем терминале;
      • kill — для прерывания процесса;
      • ps — для вывода списка активных и запущенных процессов.

      Мы также научились запускать задачи в фоне, добавив к команде знак &.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *