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
🎂10 Years of Google Chrome
#GoogleChrome turned 10 on Sunday, and according to its Twitter, we should be expecting a surprise today. Meanwhile, let's take a look at #Chrome's path to browser market domination:
2008 ⇢ 0.3%
2018 ⇢ 60%
Also, since 2012, #Google Chrome has become the world's most popular browser. Here's the list of its predecessors as the world's number one most popular browser since 1990:
1990 ⇢ WorldWideWeb
1993 ⇢ NCSA Mosaic
1995 ⇢ Netscape
1999 ⇢ Internet Explorer
2012 ⇢ Google Chrome
🚀@PerspectiveIX
💌 Join Pulse: Our Weekly Newsletter
❓ Is Chrome your default desktop browser?
Google Chrome
Google Chrome 是一款快速、安全且易于使用的网页浏览器,提供流畅的浏览体验和丰富的扩展功能。支持多平台同步,用户可以在多个设备上无缝访问书签、历史记录和设置。Chrome 还具备强大的隐私和安全保护措施,确保用户安全上网。
🔗:https://pan.quark.cn/s/80e6d21f7a1c
#GoogleChrome#网页浏览器#快速安全#多平台同步#扩展功能#隐私保护
🔔Twitter👥频道💬群组