Книга: Linux глазами хакера
3.4.1. Смена режима
3.4.1. Смена режима
Фоновыми процессами являются все сервисы. Они выполняют свои действия параллельно с вашей работой. Но вы в фоновом режиме можете запустить любую программу. Для этого достаточно после указания команды через пробел поставить знак "&". Например, выполните сейчас следующую команду:
man ls &
В ответ на это вы не увидите файл помощи, а на экране появится только строка:
[1] 2802
После этого терминал снова готов работать, потому что центральный процесс запустил команду man ls
в фоновом режиме, и свободен для выполнения новых директив.
А что же мы увидели в ответ на выполнение команды? В квадратных скобках показан порядковый номер фонового процесса, который мы запустили. Это число будет последовательно увеличиваться. В данном случае это первая команда, поэтому в квадратных скобках стоит единица. Это число формируется для каждого пользователя. Если войти в систему через второй терминал и запустить фоновый процесс, то вы увидите примерно следующее:
[1] 2805
В квадратных скобках опять число 1, а вот следующее значение отличается от выведенного на первом терминале и будет всегда другим. Это PID (Process ID, идентификатор процесса) созданного процесса, является уникальным для всех пользователей. Это значит, что если вы запустили процесс с номером 2802, то другой пользователь никогда не увидит этого идентификатора. Его PID будет другим.
Запомните идентификаторы, которые вы увидели, впоследствии они пригодятся.
Чтобы узнать, какие процессы у вас запущены, выполните команду jobs
. В ответ на это вы получите:
[1] + Stopped man ls
В данном случае мы видим, что процесс с номером [1] загружен в память, и состояние команды man ls
— Stopped
(остановлен).
Какой смысл в том, что мы отправили просмотр файла помощи в фоновый режим? Я не зря выбрал эту команду, потому что в этом есть резон. Вы в любой момент можете сделать фоновый режим основным. Для этого необходимо ввести команду fg %1
, где число 1 указывает номер вашего процесса, который вы видели в квадратных скобках. Попробуйте сейчас выполнить эту директиву, и перед вами откроется запущенная программа man, отображающая файл помощи по использованию команды ls
.
Раз процесс можно сделать центральным, значит можно поступить и наоборот. Чтобы вернуть процесс в фоновый режим, нажмите клавиши <Ctrl>+<Z>. Перед вами снова появится командная строка. Выполните команду jobs
, чтобы убедиться, что команда man ls
все еще работает.
Если в программе есть возможность выполнять системные команды, то вместо сочетания клавиш <Ctrl>+<Z> можно выполнить команду bg %1
. Число 1 — это снова номер процесса.
- 5.10 CМЕНА ВЛАДЕЛЬЦА И РЕЖИМА ДОСТУПА К ФАЙЛУ
- 14.2. Смена корневого каталога
- 2.6. Термостабилизация режима каскада на биполярном транзисторе
- Смена темы узла
- Рис. 94. Разрешить использование спящего режима.
- 8.4.1. Смена каталога: chdir() и fchdir()
- Приоритеты начинающего инфобизнесмена
- 5.5. Смена владельца, прав доступа и времени изменения
- 5.5.1. Смена владельца файла: chown(), fchown() и lchown()
- 9.4.3.3. Работа с флагами статуса файла и режимами доступа
- Глава 7 Способы организации диалогового режима работы сценариев
- Три режима выполнения сценариев WSH