reload_flag=""
if [[ -n "${DEBUG}" ]]; then
reload_flag="--reload"
fi
if [[ -n "${WORKER_COUNT}" ]]; then
workers=${WORKER_COUNT}
else
workers=2
fi
gunicorn --workers ${workers} \
--bind 0.0.0.0:8000 \
${reload_flag} main.wsgi
Писали такие конструкции чтобы проверить наличие флага и сформировать команду правильно?
На самом деле можно сделать тоже самое проще. Для этого используются операторы условной подстановки, доступные в оболочках семейства POSIX.
:- для установки значений по умолчанию
${WORKER_COUNT:-2}
Если переменная не объявлена, то будет дефолтное значение 2.
:+ подставляет указанный текст, если переменная не пуста
${DEBUG:+--reload}
Если что-то есть в переменной то распечатается текст после символа +, в противном случае - ничего. Удобно для опциональных флагов, как в нашем примере.
Итого наш скрипт может выглядеть так:
gunicorn --workers ${WORKER_COUNT:-2} \
--bind 0.0.0.0:8000 \
${DEBUG:+--reload} main.wsgi
Есть еще два оператора.
:= не только подставить дефолтное значение, но и присвоить его переменной, если она пуста
# никаких переменных еще нет
VAL1=${VAL2:=hello}
# теперь доступны обе
echo $VAL1 $VAL2
# hello hello
:? остановить выполнение с ошибкой, если переменной нет.
echo ${MISS:?is required}
bash: MISS: is required
Код выхода будет 1.
#tricks#linux
Коротенькое видео, на котором очевидна консистентность композиции и форм, но при этом все остальное переосмысляется (в рамках, конечно, промта с котом).
#Controlnet — изучать и изучать, так как конфигураций использования, даже не учитывая что он постоянно обновляется — миллиард. Продолжаю тренироваться на кошках.
😩
Покинувшие нас бренды с которыми нам теперь жить….
#ControlNet для #StableDiffusion
Идея авторов, реализация наша:
Adios, Nyetflix, Faceboo, Amazon и другие😔
Всем привет!
Добро пожаловать в 👾 Нейро-Софт!
Для навигации по каналу используйте карту тегов
⤵️:
#txt2img - Нейросети для генерации изображений по текстовому описанию.
#img2img - Нейросети для изменения или стилизации изображений на основе других изображений.
#txt2video - Нейросети для генерации видео по текстовому описанию.
#img2video - Нейросети для создания видео на основе изображений.
#deepfake - Нейросети для создания дипфейков и замены лиц в видео.
#music - Нейросети для генерации музыки.
#voicecloning - Нейросети для клонирования голоса.
#tts - Нейросети для синтеза речи из текста.
#stt - Нейросети для распознавания речи и перевода её в текст.
#txt2txt - Нейросети для генерации текста, анализа текста и перевода.
#multimodal - Нейросети, комбинирующие текст с изображениями или видео.
#style - Нейросети для стилизации и переноса стиля.
#creative - Инструменты для создания визуальных эффектов и художественного творчества.
#stablediffusion - Нейросети для генерации изображений на базе модели Stable Diffusion.
#controlnet - Нейросети использующие принципы или модели ControlNet, например Instant ID.
#fooocus - Репаки и форки Fooocus.
#forge - Репаки и форки Forge.
#a1111 - Репаки и форки Automatic 1111.
#llm - Большие языковые модели для генерации и анализа текста.
💬Обсудить в чате | ⭐️Поддержать канал
👾НЕЙРО-СОФТ — Делаем нейросети доступнее.