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
Откройте для себя Республику Корея — страну традиций, технологий и вдохновения!
Корея — это удивительное сочетание древней культуры и ультрасовременного ритма. Здесь рядом с древними дворцами соседствуют небоскрёбы, а уличная еда конкурирует по популярности с ресторанами высокой кухни.
Почему стоит выбрать Корею для путешествия:
🔵 Уютные чайные домики и старинные кварталы Сеула
🔵 Футуристическая архитектура и модные районы, где рождаются мировые тренды
🔵 Роскошные термальные спа и горные пейзажи острова Чеджу
🔵 Неповторимая корейская кухня — от уличного кимчи до звёзд Мишлен
🔵 Безопасность, чистота и гостеприимство на каждом шагу
Авиакомпания T’way Air открывает новые возможности для путешествий — прямые рейсы соединяют Центральную Азию с Сеулом, делая Южную Корею ближе, чем когда-либо.
Планируйте поездку с Мой Агент — и откройте Корею по-новому!
#МойАгент#TwayAir#ЮжнаяКорея#путешествия#travelprofessionals#B2Btravel
Маврикий — остров безмятежности и гармонии, где бирюзовый океан встречает утончённый сервис🌊
Сеть Constance Hotels & Resorts воплощает дух острова в четырёх уникальных отелях — Constance Prince Maurice, Constance Belle Mare Plage, C Mauritius и Constance Sakoa Boutik Hotel.
Каждый из них создан для того, чтобы гости могли почувствовать настоящее очарование Индийского океана — будь то отдых в тишине лагун, семейные путешествия или активные каникулы у моря.
Забронировать отели Constance Hotels & Resorts можно на платформе myagent.online.
А сейчас — самое время это сделать: бронирования участвуют в акции «С Мой Агент в зиму!», где ваши продажи приносят не только удовольствие клиентам, но и бонусы вам.
Больше информации об отелях Constance доступно в нашем вебинаре⏪️
#МойАгент#ConstanceHotels#Маврикий#отдых#travelprofessionals#B2Btravel#акция#зимнийсезон
Новый год уже не за горами, и отели начинают раскрывать свои праздничные программы✨
Дубай — одно из самых ярких направлений для встречи Нового года: роскошь, стиль и незабываемая атмосфера мегаполиса на берегу Персидского залива.
Address Beach Resort 5* — идеальное место, где городской ритм сочетается с курортным комфортом премиум-класса. Отель расположен в самом сердце JBR, рядом с Dubai Marina, The Walk, пляжем The Beach и самым большим колесом обозрения в мире — Ain Dubai.
Новогодняя программа:
начало — 20:30, до полуночи
стоимость — от 555 AED(около 12,500 руб.)
гости могут выбрать одну из нескольких зон в отеле для празднования
📄 Подробная программа празднования — в прикреплённом файле.
Хотите узнать больше об отелях Emaar Group?
Смотрите запись нашего вебинара
#МойАгент#EmaarHotels#Dubai#AddressBeachResort#NewYear2026#travelprofessionals#отелиДубая