Итак, у вас есть файлы с одинаковыми именами в двух каталогах, и где оба файла присутствуют, чтобы их объединить?
for file in dir1/*; do
otherfile="$(basename "$file")"
if [[ -r dir2/"${otherfile}" ]]; then
cat "$file" dir2/"$otherfile" >> combined/"$otherfile"
fi
done
Do you know how to run a uWSGI server or Gunicorn server under a venv on boot?
Вам необходимо создать виртуальную среду и жестко указать путь к uWSGI или Gunicorn.
Чтобы запустить приложение при загрузке, используйте systemd или supervisor .
Пример использования супервизора.
# content from /etc/supervisor/conf.d/microblog.conf
[program:microblog]
command=/home/ubuntu/microblog/venv/bin/gunicorn -b localhost:8000 -w 4 microblog:app
directory=/home/ubuntu/microblog
user=ubuntu
autostart=true
autorestart=true
stopasgroup=true
killasgroup=true
Подробности см. в руководстве Мигеля о Развертывании в Linux .
Я нашел отличный способ с помощью того, что Simba описывал в Supervisor, но с файлами systemd.service.
...
[Unit]
Description=Gunicorn Server for a Flask/Python3 Application
[Service]
WorkingDirectory=/home/debian/virt
ExecStart=/home/debian/virt/env/bin/gunicorn -b 0.0.0.0:5000 -w 4 TheNameOfMyPythonApp:app
[Install]
WantedBy=multi-user.target
Итак, я только что описал свой каталог в разделе [Service], а затем использовал ExecStart=, чтобы дать старт моему местоположению Gunicorn в моей среде.