質問: $ ./testsh110207.sh ./testsh110207.sh: line 6: [: too many arguments ./testsh110207.sh: line 13: [: too many arguments ********* テスト完了 *********
回答: if [ ${test1} = ${test2} ] ↓ if [ "${test1}" = "${test2}" ] 値にスペースを含む変数を引数に渡すときはダブルクォーテーショ ンで括らないと展開されて複数の引数が渡されたという風にみなさ れてしまいます。 [ コマンドで比較する場合は第2引数に演算子、第4引数は] でな ければなりませんが(もちろん演算子によってルールは違います)、 変数が展開されてしまった結果、] が第5引数になってしまってお りエラーを吐いている状況です。