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
#TIL – MILLAT KO‘RKI
21-oktyabr – o‘zbek tili bayrami kuni barchamizga muborak bo‘lsin!
O‘zlikni anglash, milliy ong va tafakkurning ifodasi, avlodlar o‘rtasidagi ruhiy-ma’naviy bog‘liqlik til orqali namoyon bo‘ladi. Jamiki ezgu fazilatlar inson qalbiga, avvalo, ona allasi, ona tilining betakror jozibasi bilan singadi.
Ona tili – bu millatning ruhidir.
Sizlarni yurtimiz tarixidagi muhim sanalardan biri – O‘zbek tili bayrami kuni bilan chin qalbdan muborakbod etamiz!
Ushbu ulug‘ bayram barchamizga quvonch, faxr va g‘urur ulashsin! Ona tilimiz abadiy yashasin, doimo barhayot bo‘lsin!
😎Telegram |🌐Websayt
😎Facebook |😎YouTube|😎Instagram
#TIL there are laws mandate the use of a specific font.
[... A]ny text that is displayed on a primary package or secondary package, or on any overwrap covering the package, must [...] be printed in a regular weight and width Lucida Sans Serif font style, without italics, and in gray.
https://gazette.gc.ca/rp-pr/p2/2019/2019-05-01/html/sor-dors107-eng.html🐟