筆者がよく使うシェルスクリプトの処理をまとめました。
読み方

bashってどう読むのかな?
筆者は「ビー・エー・シェル」と読んでいましたが、UNIX 用語 由来/読み方辞書によると「バッシュ」と読む人が多く、ついで「ビー・エー・シェル」だそうです。
日時ファイル名

"2020-04-14.log" みたいなことだね
mysqldumpしたファイル、バックアップファイル、ログファイルなどの場合、ファイル名に日時を含めることが多いです。
年月日時分秒をハイフンでつないで、2020-04-14-11-46-36。アンダースコアでつないで 2020_04_14_11_46_36 の場合。
# 2020-04-14-11-46-36
dst=$(date +%Y-%m-%d-%H-%M-%S)
echo $dst
# 2020_04_14_11_46_36
dst=$(date +%Y_%m_%d_%H_%M_%S)
echo $dst
Code language: Bash (bash)

同じ秒のうちに、2回呼ぶと、同じファイル名ができてしまうよ。

心配しすぎじゃない?
そのような場合は、"%3N"を使って、ミリ秒まで指定します。
# 2020-04-14-11-46-36-123
dst=$(date +%Y-%m-%d-%H-%M-%S-%3N)
echo $dst
Code language: Bash (bash)

バッククォート `date +%Y-%m-%d` と書いているところも多いけど?

同じ意味よ。
$()のほうを使ったほうがいいみたいね
mysqldumpするとき
db123.example.jp_my_wp_2014-04-14-12-15-53.sql のようなファイル名にmysqldumpする場合です。
#!/bin/bash -ue
DB_HOST=db123.example.jp
DB_NAME=my_wp
DB_USER=my_wp
DB_PASS=xxxxxxxx
dst=${DB_HOST}_${DB_NAME}_$(date +%Y-%m-%d-%H-%M-%S).sql
mysqldump --user=${DB_USER} --password=${DB_PASS} --host=${DB_HOST} ${DB_NAME} >$dst
gzip $dst
Code language: Bash (bash)

イコール"="の左右に空白をつけたほうが、読みやすいと思って、
DB_HOST = db123.example.jp
と書いてみたけど、動かなかったよ?
はい、変数に値を設定するとき、イコール"="の左右に空白をつけてはいけません。
$ DB_HOST = db123.example.jp
DB_HOST: コマンドが見つかりません
Code language: Bash (bash)
複数データベースをmysqldumpするとき
DB_HOSTなどの設定を別ファイルにして、mysqldumpとgzipの処理を1ファイルにまとめる場合です。

hetemlなら、/home/users/1/yourname/cronディレクトリを作るんだね。

そうよ。cron実行ファイルは、/home/users/1/yourname/cron/main.sh ね。
$ tree cron/
cron/
├── db1.sh
├── db2.sh
├── main.sh
└── mysqldump.sh
Code language: Bash (bash)
main.sh
最初に起動するファイルです。プログラムやスクリプトでは、mainをつけることが多いです。
#!/bin/bash -ue
script_dir=$(cd $(dirname $0); pwd)
${script_dir}/db1.sh
${script_dir}/db2.sh
Code language: Bash (bash)

script_dirで何をやっているのか、よくわからないよ
script_dirを使わないなら、次のように書くこともできます。
#!/bin/bash -ue
/home/users/1/yourname/cron/db1.sh
/home/users/1/yourname/cron/db2.sh
Code language: Bash (bash)

これなら意味わかるよ

でも、他のサーバでも使いたいとき、コピペしやすいのはどちらかしら?

/home/users/1/yourname/cron の部分をサーバに合わせて編集しなきゃならないんだね!
db1.sh
#!/bin/bash -ue
export DB_HOST=db123.example.jp
export DB_NAME=db1
export DB_USER=db1
export DB_PASS=xxxxxxxx
script_dir=$(cd $(dirname $0); pwd)
${script_dir}/mysqldump.sh
Code language: Bash (bash)
今回は、変数DB_HOSTの設定に、exportをつけます。
exportをつけない変数を、シェル変数といいます。シェル変数を使えるのは、このシェルスクリプト内だけです。呼び出し先のシェルスクリプト mysqldump.sh では、その変数を使えません。
exportをつけた変数は、環境変数といいます。呼び出し先のシェルスクリプト mysqldump.sh でも、変数DB_HOSTの値を使うことができます。
db2.sh
#!/bin/bash -ue
export DB_HOST=db123.example.jp
export DB_NAME=db2
export DB_USER=db2
export DB_PASS=xxxxxxxx
script_dir=$(cd $(dirname $0); pwd)
${script_dir}/mysqldump.sh
Code language: Bash (bash)
main.shはターミナルで実行可能ですが、db1.sh や db2.sh もターミナルで実行可能です。
mysqldump.sh
#!/bin/bash -ue
dst=${DB_HOST}_${DB_NAME}_$(date +%Y-%m-%d-%H-%M-%S).sql
mysqldump --user=${DB_USER} --password=${DB_PASS} --host=${DB_HOST} ${DB_NAME} >$dst
gzip $dst
Code language: Bash (bash)
呼び出し元でexportした変数DB_HOSTをmysqldump.sh内で使っています。
ターミナルでmysqldump.shを実行すると、DB_HOSTが未設定なので、エラー終了します。
$ ./mysqldump.sh
./mysqldump.sh: 行 3: DB_HOST: 未割り当ての変数です
Code language: Bash (bash)

変数名の大文字小文字って意味あるのかな?
変数名の大文字、小文字は区別されます。変数 x と 変数 X は違う変数です。

大文字の変数名と小文字の変数名があるんだけど、使い分けているのかな?
伝統的に、exportする変数は、全て大文字のアンダーバーつなぎ(スネークケース)です。
ターミナルで env を実行すると、export変数の一覧が表示されます。全て小文字やキャメルケースの変数はありません。
exportしない変数は、全て大文字のスネークケース、全て小文字のスネークケース、どちらでもいいと思います。
筆者は、全て小文字にすることもありますが、変数が目立たない感じがして、全て大文字にすることもあります。
