What is the difference between login shell and non-login shell?
Login shell read the user’s specific environment settings.
Non-login only read the basic setting defined by the system for all bash users. Login to other servers, i.e. ssh or telnet, start as non-login shell in the remote server.
login shell startup:
non-login shell startup: