I've seen : "${DB_HOST:=localhost}" because it assigns the variable if not set (: $… is just to run assignments standalone).

But that has the same effect like DB_HOST="${DB_HOST:-localhost} (use the string if not set), which is more readable.

While something like echo "${DB_HOST:=localhost}" smells from a mile, because it has output with side-effects.

you are viewing a single comment's thread
view the rest of the comments
[–] 2 points 1 week ago

DRY is from a time where one-letter variables were common.

That's absolutely not the case. Please look into the principle instead of assuming you know what it means.

  • source
  • parent