I need to understand when I need to use the -i .
At the moment I am getting this error
bash: cannot set terminal process group (-1): Not a tty
bash: no job control in this shell
When I check what bash is
It's a convention so the *nix shell knows what kind of interpreter to run.
For example, older flavours of ATT defaulted to sh (the Bourne shell), while older versions of BSD defaulted to csh (the C shell).
Even today (where most systems run bash, the "Bourne Again Shell"), scripts can be in bash, python, perl, ruby, PHP, etc, etc. For example, you might see #!/bin/perl or #!/bin/perl5.