シェルスクリプトの実行ディレクトリをスクリプトファイルのある場所にする

sh /usr/local/bin/hoge.sh

cd /usr/local/bin/
sh hoge.sh

スクリプトの実行ディレクトリが異なるので、スクリプト内部の挙動が変わることがあります。

cd `dirname $0`

このコマンドをスクリプトの先頭に記述しておけば、スクリプトの位置からの相対パスでの挙動に統一することができるようになります。

また、

(cd /tmp; echo "hoge";)

のように記述すれば本線のディレクトリの位置を変えずに、異なるディレクトリからコマンドを実行することができます。