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
Audi has officially unveiled the new generation A6!
Now, this index belongs to electric vehicles — a liftback and an estate version.
🚘 The exterior of the new models is almost entirely copied from the namesake concepts, while the interior is inspired by the Q6 e-tron crossover.
🚢 The base version will be the rear-wheel drive A6 e-tron performance with a single motor producing 367 hp. For the S6, there will be two motors delivering 550 hp and accelerating from 0 to 100 km/h in just 3.9 seconds, with a top speed of 240 km/h.
🔋 In both cases, a 100 kWh battery is provided, allowing the single-motor versions to travel up to 756 km, while the all-wheel drive versions can reach up to 675 km.
ℹ️ Pre-orders will start in September, with prices starting at €75,600 for the standard version and €99,500 for the S6.
#Audi#A6#ElectricVehicles#ETRON#CarLaunch#LuxuryCars#Innovation#S6#Auto
🚗✨Introducing the Audi Q6 e-tron Sportback!✨🚗
The sleek new Sportback version features a more aerodynamic design, reducing the drag coefficient from 0.28 to 0.26! 🌬️ This enhancement boosts the range to an impressive 656 km on a single charge! 🔋💨
🔧Powertrain Options:
• Rear-wheel drive versions come with a single electric motor delivering 252 or 306 hp paired with 83 or 100 kWh batteries. ⚡️
• The all-wheel drive variant boasts 387 hp, accelerating from 0 to 100 km/h in just 5.9 seconds! 🚀
• The top-tier SQ6 Sportback e-tron unleashes an incredible 489 hp, hitting 100 km/h in only 4.3 seconds! 🏁🔥
🏭 Production is set at the Ingolstadt plant, with prices starting at €65,900 and going up to €96,200. 💰
#AudiQ6#eTron#Sportback#ElectricVehicle#EV#SustainableDriving#LuxuryCars#Innovation#AudiFamily#Auto🚘🌍