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
🔍 Взгляд на процесс разгрузки судна через стеклянный пол кабины причального крана-перегружателя (STS) предоставляет уникальную перспективу работы крупнейшего морского контейнерного терминала России - Владивостокского морского торгового порта (FESCO).
📦 На экране видно, как контейнеры аккуратно поднимаются и перемещаются, обеспечивая эффективную разгрузку с судна. Высокая точность и скорость работы крана являются ключевыми факторами для поддержания ритма операций.
🌊 Владивостокский морской торговый порт, расположенный в стратегически важном месте на Дальнем Востоке, активно работает с международными судами, обеспечивая страны Азиатско-Тихоокеанского региона необходимыми грузами. С учетом современных технологий и подходов, таких как автоматизация и цифровизация, разгрузка в порту осуществляется быстро и безопасно.
____
#ТИСЛОДЖИСТИК🦏
#Логистика
#STS
#FESCO
🚢DP World усиливает терминал в Саутгемптоне поставкой новых STS-кранов.
Компания DP World направляет на терминал порта Саутгемптон - два новых контейнерных крана STS, произведенных ZPMC, которые доставляются из Китая на тяжеловозном судне "Zhen Hua 28".
Поставка является частью программы стоимостью £60 млн, предусматривающей установку четырёх кранов.
Новые краны поставляются полностью собранными и рассчитаны на обслуживание крупнейших контейнеровозов. С грузоподъемностью 65 тонн и вылетом стрелы 72 метра они способны выполнять "quad-lift" операции, одновременно перемещая два 40-футовых контейнера, что существенно повышает производительность терминала.
С отраслевой точки зрения инвестиция отражает продолжающийся тренд укрупнения контейнерного флота и необходимость модернизации портовой инфраструктуры. Повышение производительности кранового оборудования напрямую влияет на скорость обработки судов и оптимизацию грузопотоков, особенно на ключевых маршрутах Азия–Европа.
Рост объемов перевалки в Великобритании подтверждает актуальность таких вложений: терминал порта Саутгемптон превысил 2 млн TEU в 2025 году, тогда как London Gateway продемонстрировал значительный рост, усиливая позиции DP World на рынке контейнерных перевозок страны.
📌DP World — основана в 2005 году, глобальный портовый оператор, принадлежит инвестиционной компании Dubai World, контролируемой правительством Дубая (ОАЭ).
#ports#container#STS#logistics#shipping
Готовы к новому сезону?😁
Дадада?Нетнетнет?Ну не знаю!?
Делитесь!😉
И всем огромное спасибо сегодня за тонну тепла на встрече в @cdm_moscow в компании с @start.ru ❤️Мы Вас очень любим Дорогие Наши Зрители!✨
#папиныдочки#новыйсезон#сериал#платформа#start#sts#стс#комедия#comedy#семейныйсериал#папиныдочкиновые#moodoftheday#photooftheday#greenlove#saturday#actress#мирославакарпович#petitefemme#mira