Você não precisa de um if
devido ao &&
que pode ser usado como equivalente.
[ ] : conditional test
! not
-f FILE : does FILE exist ?
&& : do the following only if the statement before is true (returns 0)
exit : exit the script
. FILE : include FILE
O script verifica se o arquivo não existe e sai do script quando isso é verdade. Caso contrário, ele irá fornecer / incluir esse arquivo.
Estes 3 são equivalentes:
if [ something ]; then something_else; fi
[ something] && something_else
test something && something_else