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
Oak and Ivy — Holler (Self-Released, 2024)
#traditional#field_recording#appalachian#oldtime#clawhammer#banjo#United_States
Holler — сольная акустическая запись, сделанная ночью в Аппалачах. В альбом вошли традиционные песни региона, исполненные без студийной обработки, в живой и непосредственной манере. Среди них, например, — The Cuckoo, английская народная песня, получившая широкое распространение в Северной Америке, и Cluck Old Hen, один из старейших образцов аппалачского репертуара, впервые записанный в 1923 году Фиддлином Джоном Карсоном, но известный в устной традиции как минимум с 1886 года.
🔗Bandcamp | Telegram
Jerron Paxton — Things Done Changed (Folkways Records, 2024)
#blues#oldtime#ragtime#cajun#guitar#banjo#harmonica#United_States
Джеррон Пакстон — мультиинструменталист из Лос-Анджелеса, выросший в семье выходцев из Луизианы. Он исполняет блюз, рэгтайм, олдтайм и каджунскую музыку — локальную традицию Луизианы, возникшую среди франкоязычного населения и вобравшую в себя элементы французского фольклора, креольной культуры и ритмики африканской диаспоры.
Семья Пакстона перебралась в Калифорнию после убийства Эмметта Тилла — четырнадцатилетнего подростка, линчёванного в Миссисипи в 1955 году после обвинения со стороны белой женщины. Убийство Эмметта Тилла получило широкую огласку и стало поворотным моментом в истории борьбы за гражданские права чернокожих в США. Многие афроамериканцы после этого предпочли уехать с Юга, и Южный Лос-Анджелес, куда попали родственники Пакстона, стал одним из новых центров их жизни — не чужим, а скорее пересобранным Луизианским югом на новом месте.
Things Done Changed — первый альбом Джеррона Пакстона, целиком состоящий из авторских песен. При этом, как и предыдущие работы музыканта, он выдержан в стилистике традиционной афроамериканской музыки первой половины XX века. Музыкальные интересы Пакстона начали формироваться ещё в детстве — он подолгу слушал радио, стараясь уловить манеру исполнения, структуру старинных песен и их скрытые смыслы. Со временем он освоил гитару, банджо, фортепиано, скрипку и другие инструменты, звучащие в афроамериканской музыкальной традиции.
На альбоме Things Done Changed Пакстон создаёт авторские композиции, в которых стилистика прошлого становится языком разговора о настоящем. Например, в песне So Much Weed он с иронией и горечью поёт о том, как чернокожие американцы до сих пор отбывают сроки за незначительные правонарушения, связанные с марихуаной, — в то время как в большинстве штатов её продажа уже давно легализована.
🔗Spotify | AppleMusic | YouTube | Bandcamp | Telegram