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
Let's work together to prevent the spread of #Lassafever.
Be a guardian of proper sanitation in your community and promote frequent #Handwashing with soap and running water.
Read our latest #LassaFever situation report:
https://ncdc.gov.ng/diseases/sitreps/?cat=5&name=An%20update%20of%20Lassa%20fever%20outbreak%20in%20Nigeria
Let's work together to prevent the spread of #Lassafever.
Be a guardian of proper sanitation in your community and promote frequent #Handwashing with soap and running water.
Read our latest #LassaFever situation report:
https://ncdc.gov.ng/diseases/sitreps/?cat=5&name=An%20update%20of%20Lassa%20fever%20outbreak%20in%20Nigeria
#Lassafever is preventable.
Be a guardian of proper hand hygiene in your community
Promote frequent #handwashing with soap and running water.
#LassaFeverInfo
#Handwashing with soap under clean, running water is very vital to the prevention of #cholera.
Important #handwashing moments⬇️
✅While caring for the ill
✅After using the toilet
✅Before food preparation
✅Before and after eating
✅After touching high-contact surfaces
#STOPcholera
#Handwashing is a basic and effective tool against infections.
If we do not become sick, we would not need to use #antimicrobials.
Encourage your loved ones to practice frequent #handwashing with soap under running water.
Do your part to prevent #AntimicrobialResistance
#HandHygiene with clean, running water is very vital to the prevention of #cholera.
Important #handwashing moments⬇️
✅While caring for the ill
✅After using the toilet
✅Before food preparation
✅Before and after eating
✅After touching high contact surfaces
#TakeResponsibility
#HandHygiene with soap under clean, running water is very vital to the prevention of #cholera.
Important #handwashing moments⬇️
✅While caring for the ill
✅After using the toilet
✅Before food preparation
✅Before and after eating
✅After touching high contact surfaces
#TakeResponsibility
#HandHygiene with clean, running water is very vital to the prevention of #cholera.
Important #handwashing moments⬇️
✅While caring for the ill
✅After using the toilet
✅Before food preparation
✅Before and after eating
✅After touching high contact surfaces
#TakeResponsibility
#HandWashing remains the most basic and effective means to prevent the spread of infections.
Frequent #handwashing with soap under running water at home, work, health facilities, gatherings, and public spaces is highly important to stay healthy.
Let us all make #cleanhands a regular habit. It protects us all.
#TakeResponsibility
#HandWashing is a basic &effective tool against infections.
If we don't become sick, we would not need to use #antibiotics.
Let us promote the practice of #handwashing in our homes & communities to prevent #AntimicrobialResistance together.
#WorldAntimicrobialAwarenessWeek2022