bashでよく使う機能をまとめておきます。
#!/bin/sh
## スクリプト実行ディレクトリの取得
cd `dirname $0`
BASE_SCRIPT=`pwd`
## 時刻情報を年月日-時分の文字列として取得
d=`date '+%Y%m%d-%H%M'`
## 関数の宣言
function funcA() {
echo "funcA"
}
## スクリプトのパラメータ数チェック
if [ $# -ne 1 ]; then
f="${BASE_SCRIPT}/../target.txt"
else
## スクリプトの第1パラメータ代入
f=${1}
fi
## ファイルの存在チェック
if [ -e ${f} ]; then
mv ${f} ${f}.${d}
fi
## ファイルが存在しないことのチェック
if [ ! -e ${f} ]; then
echo "not exist ${f}"
fi
## 差分を確認して、差が発生した場合と同じ場合とで処理を分岐
diff ${BASE}/${f} ${BASE}/${f}.old
if [ $? -ne 0 ]; then
echo "not equals"
else
echo "equals"
fi
## grepをしてある文字列が含まれていたら処理を分岐
cat ${BASE}/${f} | grep "HIT!"
if [ $? -eq 0 ]; then
echo "hit"
else
echo "not hit"
fi
## 関数呼び出し
funcA
bashについては下記書籍が参考になるでしょう