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
#RUNE/USDT analysis :
#RUNE has retested the resistance zone following a bullish impulsive move. The price is anticipated to bounce from the current level and test higher levels.
TF : 1W
Entry : $2.190
Target : $7.566
SL : $1.314
#RUNE/USDT analysis :
#RUNE has recently broken out of the 200 EMA with strong bullish momentum. The price is currently showing bullish price action. It is expected to rise higher. Before that, the price is expected to pull back and then rise higher. Wait for the price to test the support zone for a long entry.
TF : 2H
Entry : $3.813
Target : $4.233
SL : $3.603
#rune scalping opportunity 🧐
After the big dump, the previously formed liqudation void was closed. From here, it would either turn or dump would continue.
When we look at the short time frame, we see that it can start the rise by forming a failure swing.