Você precisa encerrar a condição de if
da seguinte forma:
if [ "${ORACLE_SID}" != 'Test' ]; then
ou assim:
if [ "${ORACLE_SID}" != 'Test' ]
then
Observação: você também precisa colocar espaços depois de [
e antes de ]
.
O motivo do ;
ou linebreak é que a parte da condição da instrução if
é apenas um comando. Qualquer comando de qualquer comprimento para ser preciso. O shell executa esse comando, examina o status de saída do comando e decide se deve executar a parte then
ou a parte else
.
Como o comando pode ser de qualquer tamanho, é necessário que haja um marcador para marcar o final da parte da condição. Essa é a ;
ou a nova linha, seguida por then
.
O motivo dos espaços após [
é porque [
é um comando. Geralmente um builtin do shell. O shell executa o comando [
com o restante como parâmetros, incluindo o ]
como último parâmetro obrigatório. Se você não colocar um espaço após [
, o shell tentará executar o comando [whatever
as e falhar.
O motivo do espaço antes do ]
é semelhante. Porque senão não será reconhecido como um parâmetro próprio.