別ファイルに書いた変数定義は . (ドット)コマンドで読み込めるって話.
NAS をマウントするための自作スクリプト punch.sh を作ってます.
その中で,設定ファイル punch.conf を読み込むときに,load という関数を使って grep と cut で変数定義を切り出していました.
# punch.conf FROM=//192.168.11.xx/nas TO=$HOME/nas USER=[user name] PASSWORD=[password]
# punch.sh readonly CONF_FILE="$HOME/.punch.conf" load() { echo "`grep $1 $CONF_FILE | cut -d= -f2`" } readonly FROM="`load FROM`" readonly TO="`load TO | sed -e "s|\\$HOME|$HOME|g"`" readonly USER="`load USER`" readonly PASSWORD="`load PASSWORD`" readonly UID="`id -un`" readonly GID="`id -gn`" [ -d $TO ] || mkdir $TO sudo mount \ -t cifs $FROM $TO \ -o username=$USER,password=$PASSWORD,uid=$UID,gid=$GID
これは,. コマンドによって次のようにスッキリ書けることを知りました.
readonly CONF_FILE="$HOME/.punch.conf" . $CONF_FILE [ -d $TO ] || mkdir $TO sudo mount \ -t cifs $FROM $TO \ -o username=$USER,password=$PASSWORD,uid=$UID,gid=$GID