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
O‘zbekiston Respublikasi Prezidenti Shavkat Mirziyoyevning Belgiyaga rasmiy tashrifi yakunlandi, davlatimiz rahbari Toshkent shahriga jo‘nab ketdi.
—
Официальный визит Президента Республики Узбекистан Шавката Мирзиёева в Бельгию завершился, глава нашего государства отбыл в город Ташкент.
#Mirziyoyev#tashrif#Belgiya
Prezident.uz|Facebook|Instagram|YouTube|X
O‘zbekiston Respublikasi Prezidenti Shavkat Mirziyoyevning Belgiyaga rasmiy tashrifi yakunlandi, davlatimiz rahbari Toshkent shahriga jo‘nab ketdi.
—
Официальный визит Президента Республики Узбекистан Шавката Мирзиёева в Бельгию завершился, глава нашего государства отбыл в город Ташкент.
#Mirziyoyev#tashrif#Belgiya
Prezident.uz|Facebook|Instagram|YouTube|X
Bryussel shahriga rasmiy tashrif doirasida Laken saroyida O‘zbekiston Respublikasi Prezidenti Shavkat Mirziyoyevning Belgiyaliklar Qiroli Filipp bilan uchrashuvi bo‘lib o‘tdi.
—
В рамках официального визита в Брюссель во дворце Лакен состоялась встреча Президента Республики Узбекистан Шавката Мирзиёева с Королем бельгийцев Филиппом.
#Mirziyoyev#uchrashuv#Belgiya#hamkorlik
Prezident.uz|Facebook|Instagram|YouTube|X
Bryussel shahriga rasmiy tashrif doirasida Laken saroyida O‘zbekiston Respublikasi Prezidenti Shavkat Mirziyoyevning Belgiyaliklar Qiroli Filipp bilan uchrashuvi bo‘lib o‘tdi.
—
В рамках официального визита в Брюссель во дворце Лакен состоялась встреча Президента Республики Узбекистан Шавката Мирзиёева с Королем бельгийцев Филиппом.
#Mirziyoyev#uchrashuv#Belgiya#hamkorlik
Prezident.uz|Facebook|Instagram|YouTube|X
O‘zbekiston Respublikasi Prezidenti Shavkat Mirziyoyev rasmiy tashrif bilan Bryussel shahriga keldi. Davlatimiz rahbarini Yevropa Ittifoqining Markaziy Osiyo bo‘yicha maxsus vakili Eduards Stiprays va boshqa rasmiy shaxslar kutib oldi.
—
Президент Республики Узбекистан Шавкат Мирзиёев прибыл с официальным визитом в город Брюссель. Главу нашего государства встретили спецпредставитель Европейского Союза по Центральной Азии Эдуардс Стипрайс и другие официальные лица.
#Mirziyoyev#tashrif#YI#Belgiya
Prezident.uz|Facebook|Instagram|YouTube|X
O‘zbekiston Respublikasi Prezidenti Shavkat Mirziyoyev Yevropa kengashi Prezidenti Antoniu Koshta va Yevropa komissiyasi Prezidenti Ursula fon der Lyayenning taklifiga binoan rasmiy tashrif bilan Bryussel shahriga jo‘nab ketdi.
—
Президент Республики Узбекистан Шавкат Мирзиёев по приглашению Президента Европейского совета Антониу Кошты и Президента Европейской комиссии Урсулы фон дер Ляйен отбыл с официальным визитом в город Брюссель.
#Mirziyoyev#tashrif#YI#Belgiya
Prezident.uz|Facebook|Instagram|YouTube|X
O‘zbekiston Respublikasi Prezidenti Shavkat Mirziyoyev rasmiy tashrif bilan Bryussel shahriga keldi. Davlatimiz rahbarini Yevropa Ittifoqining Markaziy Osiyo bo‘yicha maxsus vakili Eduards Stiprays va boshqa rasmiy shaxslar kutib oldi.
—
Президент Республики Узбекистан Шавкат Мирзиёев прибыл с официальным визитом в город Брюссель. Главу нашего государства встретили спецпредставитель Европейского Союза по Центральной Азии Эдуардс Стипрайс и другие официальные лица.
#Mirziyoyev#tashrif#YI#Belgiya
Prezident.uz|Facebook|Instagram|YouTube|X