The following files are used to initialise user profiles and can be customised.

~/.bash_logout

User customisable script that runs on logout, typically for housekeeping, for example clearing text present in the terminal screen.

~/.bash_profile

Hidden file, can be edited by user to customise environment variables. Runs on login.

~/.bashrc

Hidden file, generates items required by each shell, such as aliases and local variables. Runs when a shell is spawned. User customisable.

/etc/bash_logout

Global, admin modifiable script that performs tasks on logout, typically cleaning up.

/etc/bashrc

Can only be modified by admin, like ~/.bashrc runs whenever a shell is spawned and affects every user ie Global

/etc/profile

Can only be modified by admin and is run by every user on login. Contains key environment variables, sets system values and displays messages. Global.

/etc/skel

Directory containing template initialisation files that are provided to users on account creation.