質問: case inの制御文 シェルスクリプトの下記ソースに間違いはないですか? 最後のesacの次に改行は必要ですか? #!/bin/sh echo teststart i=2 case $i in 1) echo "a" ;; 2) echo "b" ;; *) echo "c" ;; esac
回答: エラーが出たんですか? 私はsdvsさんのスクリプトをコピペしたら普通に動きましたが。 自信ゼロですけどとりあえず回答。 エラーメッセージからすると in が悪さをしてるみたいですね。 in の後の改行文字がなんか変なのかな...。 ためしに case $i in の行を消して もう一回書き直してみてはどうでしょう。 (そしたらよくわからないけど動いたって経験を何回かしているもので) もしくは、 i=0 の次の行に export i を追加してみるとか。 (これは関係なさそうですけど)