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
🇹🇳La #Tunisie fête sept décennies de diplomatie
Depuis 70 ans, la diplomatie tunisienne s’est imposée comme un outil d’équilibre et de positionnement dans un environnement régional et international en constante mutation. Entre préservation des intérêts nationaux et recherche de partenariats multiples, Tunis a construit une approche fondée sur le respect mutuel et la non-ingérence. Le point avec Hend Abdessmad, notre correspondante au Maghreb.
RT en français • Osez questionner !
🇹🇳 Prix du carburant en #Tunisie : le gel pour la stabilité
Alors que les cours mondiaux du pétrole restent élevés, la Tunisie maintient inchangés les prix des carburants. Un choix assumé par les autorités pour protéger le pouvoir d’achat mais qui pèse de plus en plus lourd sur les finances publiques et relance le débat sur la soutenabilité du modèle de subvention. Les détails avec Hend Abdessmad, notre correspondante au Maghreb.
RT en français • Osez questionner !
⚡️À des milliers de kilomètres de la #Russie, la communauté russe en #Tunisie commémore la victoire de 1945, entre attachement aux racines et transmission d’un récit historique fondateur. Reportage de Hend Abdessmad depuis la ville de Hammamet.
RT en français • Osez questionner !
⚡️À des milliers de kilomètres de la #Russie, la communauté russe en #Tunisie commémore la victoire de 1945, entre attachement aux racines et transmission d’un récit historique fondateur. Reportage de Hend Abdessmad depuis la ville de Hammamet.
RT en français • Osez questionner !
💬Forum de Dakar : la Tunisie prône la stabilité en Afrique
À #Dakar, lors de la 10e édition du Forum international sur la paix et la sécurité en Afrique, la #Tunisie a réitéré son attachement historique aux principes de paix, de sécurité et de stabilité sur le continent, appelant à des actions concrètes face aux défis actuels de souveraineté, d’intégration et de développement durable. Les détails avec Hend Abdessmad, notre correspondante au Maghreb.
RT en français • Osez questionner !
⏺Stratégie numérique : un partenariat tripartite
La #Tunisie mise sur un nouveau modèle de collaboration pour accélérer sa transformation numérique : un partenariat à trois entre l’État, le secteur privé et les startups, au cœur des discussions de la Tunis Digital Summit, avec un cap fixé à l’horizon 2030. Le point avec Hend Abdessmad notre correspondante au #Maghreb.
RT en français • Osez questionner !