Parece que eu perdi 2 ponto e vírgula ( ; ) antes do fi (o fechamento da instrução if ).
Estas são as declarações if-then corretas:
if [ "$dbrootp_1" != "$dbrootp_2" ]; then echo "Values unmatched. Please try again." && exit 2; fi
if [ "$dbrootp_1" != "$dbrootp_2" ]; then echo "Values unmatched. Please try again." && exit 2; fi
Anote cada ponto e vírgula antes do fi , próximo ao final de cada linha.
Se o erro de Bash no stderr for algo como "Espera-se um ponto-e-vírgula nas linhas 6 e 10" , talvez eu não publique a pergunta e a resposta.
Parece que escrever uma declaração Bash if-then é um pouco mais detalhada do que, digamos, em JavaScript.