>>781
foo.sh は、パス無しのファイル名。
.foo.sh も同じですが、. で始まっているので、隠しファイルです。
. で始まる、ファイル名・ディレクトリ名は、隠されて、通常の操作では見えなくなる

./foo.sh は、パス有りのファイル名。
./ は、カレントディレクトリからの相対パス

../foo.sh も、パス有りのファイル名。
../ は、カレントディレクトリの親ディレクトリからの相対パス

ファイル名・ディレクトリ名の前に、/ が付いていれば、そこへ至るパス(道筋)を表す。
パスには、/ (ルートから)で始まる絶対パスと、./ または、../ で始まる相対パスがある

. ./foo.sh
. ../foo.sh

. コマンドは、source コマンドと同じ

コマンド引数にファイル名を渡すと、
今実行中の(カレント)シェルに、そのファイルを読み込んで、
ファイル中で定義した、変数・関数などを、カレントシェルで使えるようにする

source $HOME/.profile

例えば、これは、隠しファイルの、/home/ユーザー名/.profile を、
カレントシェルに読み込んで、そこに書いた設定を使えるようにする