Как запустить скрипт python в фоне на Linux 🚀

Чтобы запустить скрипт Python в фоновом режиме в Linux, вы можете использовать команду nohup и символ амперсанда (&) в конце команды. Вот пример:

nohup python script.py &

Детальный ответ

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

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

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

Самый простой способ запустить скрипт Python в фоновом режиме - добавить символ амперсанда (&) в конце команды запуска скрипта. Например:

python script.py &

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

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

Команда nohup используется для запуска команд или скриптов в фоновом режиме и игнорирования сигналов завершения. Вы можете использовать nohup для запуска скрипта Python следующим образом:

nohup python script.py &

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

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

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

Чтобы начать новый сеанс screen, выполните команду:

screen

После этого вы будете перемещены в новый виртуальный терминал. Запустите свой скрипт Python, как обычно:

python script.py

Когда вы закончите, вы можете отключиться от виртуального терминала, нажав сочетание клавиш Ctrl + A, а затем Ctrl + D. Ваш скрипт продолжит работу в фоновом режиме.

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

Команда disown позволяет предоставить процессу независимость от текущего терминала. Вы можете использовать disown после запуска скрипта Python для его отделения от терминала. Пример использования:

python script.py & disown

5. Использование системного демона (systemd)

Если вы хотите, чтобы ваш скрипт Python работал как служба в фоновом режиме при каждом запуске системы, вы можете создать systemd-службу. Создайте новый файл с расширением .service в директории /etc/systemd/system/ и добавьте следующее содержимое:

[Unit]
    Description=My Python Script
    After=network.target
    
    [Service]
    ExecStart=/usr/bin/python /path/to/script.py
    
    [Install]
    WantedBy=default.target

Замените /path/to/script.py на путь к вашему скрипту Python. Затем запустите следующие команды, чтобы разрешить systemd загрузить и запустить вашу службу:

sudo systemctl daemon-reload
sudo systemctl enable myscript.service
sudo systemctl start myscript.service

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

Заключение

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

Видео по теме

Linux - запуск процессов в фоновом режиме | UnixHost

Как запустить скрипт (python, bash) из любой папки в Linux. Как добавить скрипт в команды Linux.

Автозапуск программ на python

Похожие статьи:

Основы работы функции count в Питоне: полезные советы и примеры владения

🔮 Как преобразовать int64 в строку в Python: подробное руководство

Как правильно закончить цикл while в Python? 🐍

Как запустить скрипт python в фоне на Linux 🚀

Как использовать f-строки в Python с какой версии?

🔍 Как создать JSON-файл в Python: простой гайд для начинающих

🔎 Как выбрать индекс в питоне: 7 простых шагов и советов для успешного поиска