There's a short section in my .bashrc file that I don't understand and I'd like to ask what it means and some syntax explanation.
# Alias definitions.
# You may want to put all your additions into a separate file like
# ~/.bash_aliases, instead of adding them here directly.
# See /usr/share/doc/bash-doc/examples in the bash-doc package.
if [ -f ~/.bash_aliases ]; then
. ~/.bash_aliases
fi
I understand of course that # makes every line a comment.
Can you please explain to me the if ... then statement.
What -f means?
Why there are [] in the first line of the code?
Why there's ; after the [ -f ~/.bash_aliases ]?
Why the second line of the code starts with a . and what it actually means, this whole second line.
I know that .bash_aliases is a file containing bash_aliases in Linux, but this second line I don't understand.
., so it is not a duplicate.