質問: ターミナルを起動すると -bash: [: missing `]' とのメッセージが表示されました。 こちらのサイトを参考にターミナルからSublimeText2を開けるよう設定しました。 その際、 .bash_profileを編集した際に不手際があったのか その後ターミナルを立ち上げると Last login: Sun Jun 21 23:35:02 on ttys000 -bash: [: missing `]' というメッセージが表示されます。 原因がわかる方いらっしゃいましたらご教示頂けると幸いです。
回答: シェルの `test` コマンドには 見た目のために、"`[`" という別名があります。 `test` が "`[`" という名前で呼ばれた時は、引数の最後に "`]`" を指定しなければいけない事になっています(見た目のためです)。 ``` [ 1 -eq 1 ] ``` は ``` test 1 -eq 1 ``` と同じ意味ですが、下記のように "`]`"を省略すると表題のエラーになります。 ``` [ 1 -eq 1 # エラーになります -> bash: [: missing `]' ``` .bash_profile の編集でエラーが発生したのであれば、"`[`" に対応する "`]`" を消してしまったか、"`[`" を入れるべきで無い所に入れてしまったのでしょう。