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
Maria #Machado ha consegnato il suo premio Nobel per la pace a Donald #Trump, riconoscendogli l'impegno "nella difesa della libertà e dei valori democratici in Venezuela" durante un incontro alla Casa Bianca.
@UltimoraPolitics24
La portavoce della Casa Bianca ha confermato che giovedì Donald #Trump incontrerà la leader dell'opposizione venezuelana Maria Corina #Machado.
@UltimoraPolitics24
Questa mattina Papa #LeoneXIV ha ricevuto oggi in udienza privata, in Vaticano, María Corina #Machado, leader dell’opposizione in #Venezuela e Premio Nobel per la Pace. Lo si apprende dal bollettino della Sala Stampa della Santa Sede.
Leader del movimento Vente Venezuela, è da anni una delle voci più rilevanti nella denuncia delle violazioni dei diritti democratici nel suo Paese, la sua attività politica l’ha resa un simbolo della resistenza civile contro il regime del presidente venezuelano Nicolás Maduro, costringendola a periodi di clandestinità e all’esilio forzato.
Machado è fuggita dal Venezuela per poi essere a Oslo in occasione dell’assegnazione del Nobel, lo scorso dicembre. Dopo il sequestro e il trasferimento a New York di Maduro, il presidente Trump ha escluso che Machado possa subentrare come leader del Paese. L’udienza con Papa Leone XIV, avvenuta secondo quanto trapela su richiesta della stessa Machado, si inserisce in questo quadro di forte incertezza politica, a pochi giorni dall'incontro che la leader dell'opposizione avrà alla Casa Bianca con Trump.
🇩🇴⚾️ La lista del equipo de la República Dominicana para el WBC está empezando a tomar forma.
🟡🟡 Manny Machado y Fernando Tatis Jr confirmaron su participación con el equipo.
#️⃣#WBC26#TeamDominicana#TatisJr#Machado
🗞 | t.me/MLB_Daily
#Venezuela
Il Comitato norvegese per il Nobel ha deciso di assegnare il Nobel per la Pace a María Corina #Machado (#Vente|Destra), ex deputata e leader dell'opposizione venezuelana, “per il suo instancabile lavoro nella promozione dei diritti democratici per il popolo venezuelano e per la sua lotta per raggiungere una transizione giusta e pacifica dalla dittatura alla democrazia”.
@OsservatorioEsteri
María Corina #Machado annuncia il ritorno in Venezuela e ringrazia Donald #Trump per la cattura di Nicolás #Maduro, definendola "un passo enorme per l'umanità" e offrendo il Nobel a Trump. Critica Delcy #Rodríguez e promette un Venezuela libero.
@UltimoraPolitics24