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
НТК вошла в число лидеров операторского рынка за 9 месяцев
Согласно рейтингу Infoline Rail Russia Top, опубликованному в издании «КоммерсантЪ», НТК заняла второе место по объемам перевезенных грузов среди российских железнодорожных операторов за период с января по сентябрь 2025 г.
В общем рейтинге топ-20 крупнейших компаний отрасли НТК расположилась на третьей строчке.
☑️Транспортная логистика НТК
#нтк#логистика#infoline
📔 РОМИР, INFOLine: Розничная торговля и торговые сети FMCG 2025
Индекс потребительской уверенности:
🔣 За последние годы наблюдается стабилизация и даже некоторое улучшение экономических ожиданий россиян
🔣 Во втором квартале 2025 года индекс составил +13%, что свидетельствует о постепенном восстановлении оптимизма
🔣 Наиболее распространённые методы борьбы со стрессом включают прогулки, общение с близкими людьми и употребление вкусной пищи
Особенности потребительской активности:
🔣 Наблюдается снижение доли крупных трат (например, покупка автомобилей и недвижимости)
🔣 Готовая еда приобретает всё большее значение, особенно среди крупных розничных сетей (X5, Магнит)
🔣 Быстро растёт популярность электронной коммерции, занимающей около четверти рынка FMCG
🔣 Большинство респондентов предпочитают продукцию отечественного производства либо не придают большого значения происхождению товара.
Тенденции:
🔣 Переход к здоровой пище и осознанному выбору продуктов питания
🔣 Активизация роли онлайн-сервисов и специализированных платформ для заказа продуктов
🔣 Увеличение спроса на готовые блюда и полуфабрикаты
🔣 Возрастание интереса к локальным брендам и российским производителям.
Рекомендации:
🔣 Для повышения эффективности бизнеса рекомендуется инвестировать в цифровую инфраструктуру и расширение логистической цепочки.
🔣 Необходимо учитывать региональные особенности и адаптироваться к местным предпочтениям потребителей.
🔣 Важно развивать программы лояльности и повышать узнаваемость бренда через качественные услуги и продукцию.
#fmcg#РОМИР#INFOLine
MEDIA RESEARCHES
📅 30.04.2025 (среда)
#iGlobalmeetup⚡️AI ДЛЯ БИЗНЕСА — РЕАЛЬНО РАБОТАЮЩИЕ РЕШЕНИЯ
🌍⚡️Открытая встреча для предпринимателей, стартап-менеджеров и управленцев, где покажем проверенные, внедрённые и реально работающие AI-решения в бизнесе. Никакой теории — только кейсы, продукты и опыт!
⏳ Время:
🇦🇪 Сбор гостей очно: 7 pm DXB
🇦🇪 Старт: 8 pm DXB (7 pm msk Zoom)
📍 Формат: Очно в Дубае + 💻 Zoom (точный адрес и zoom-link получат участники, чью регистрацию мы подтвердим)
🎙 Featured speakers:
🗣 Илья Комиссаров — CEO Edith agency (Dubai)
🗣 Антон Бесщетников — Founder AI-проекта Savvy (Dubai)
🗣 Илья Лебедев — Руководитель имплементации в YANGO (Dubai)
⚡️ Почему стоит быть с нами:
1. Увидите, как ИИ уже трансформирует бизнес в реальности, а не в теории
2. Услышите честные кейсы и опыт внедрения от тех, кто уже прошёл путь
3. Завяжете полезные связи в сообществе, которое делает бизнес глобальным
📝 Регистрируйтесь через @PavelGlobalbot
🤝 Присоединяйтесь к центральному чату сообщества — ⚡️@iGlobalChat
#AI#ИИ#AIдлябизнеса#бизнесрешения#технологии#iGlobal#INFOline#Дубай#бизнесДубай#IT#стартапы#инновации#искусственныйинтеллект#событие#бизнесвстреча#предприниматели#EdithAgency#Cabbu#Yango#нетворкинг