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
Sergio #Mattarella, in visita a Varsavia, incontra il presidente della #Polonia, Andrzej #Duda: "Siamo inorriditi dai comportamenti disumani utilizzati delle forze armate russe, colpendo bersagli ed infrastrutture civili, in maniera che rende ancora più crudele l’aggressione"
@UltimoraPolitics
#Polonia#Ucraina#Russia#Italia
Andrzej #Duda, presidente della Polonia, a Davos per il Wef2022: “Se qualche politico europeo pensa che si possa indurre l’Ucraina a fare concessioni alla Russia, come ha detto di recente #Berlusconi, si sbaglia profondamente.”
@UltimoraPolitics
#RepubblicaCeca#Polonia
Il Primo Ministro ceco Petr #Fiala (#SPOLU/#ODS|ECR) ha incontrato il Presidente polacco Andrzej #Duda. Focus dell'incontro la sicurezza energetica dei due paesi. I due hanno riaffermato la loro determinazione a continuare a sostenere l'Ucraina.
@UltimoraPolitics
#Polonia🇵🇱
#Presidenziali
Rafał #Trzaskowski, 53 anni e originario della Capitale, è sindaco di Varsavia dal 2018. Formatosi all'Università di Varsavia e poi al Collegio d'Europa, è stato ministro, deputato ed europarlamentare; si candidò alle elezioni presidenziali anche nel 2020, dove ottenne il 49% contro il Presidente uscente Andrzej #Duda (#PiS|ECR), che venne rieletto col 51%.
È sostenuto dalla Coalizione Civica (#KO), che comprende: Piattaforma Civica (#PO|PPE), Moderna (#Nowoczesna|RE), Iniziativa Polacca (#iPL|PPE) e dai Verdi (#Zieloni|G/EFA).
@TuttoElezioni