0

On my Mac, after sshing into a ubuntu 18.04 computer, using iTerm, after typing in

bash

I see the ls colors turn on. Why is this?

user321627
  • 2,350
  • 4
  • 20
  • 43

1 Answers1

2

Because bash supports colors in it's output.

writing bash changes your terminal to bash from (I assume) sh ?

And it loads a bunch of files:

FILES
       /bin/bash
              The bash executable
       /etc/profile
              The systemwide initialization file, executed for login shells
       /etc/bash.bashrc
              The systemwide per-interactive-shell startup file
       /etc/bash.bash.logout
              The systemwide login shell cleanup file, executed when a login shell exits
       ~/.bash_profile
              The personal initialization file, executed for login shells
       ~/.bashrc
              The individual per-interactive-shell startup file
       ~/.bash_logout
              The individual login shell cleanup file, executed when a login shell exits
       ~/.inputrc
              Individual readline initialization file

you can find this info if you write man bash in the terminal, and go near the very end of the manual.

One of those files has color support. It is usually the file ~/.bashrc which has this:

# enable color support of ls and also add handy aliases
if [ -x /usr/bin/dircolors ]; then
  test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)"
  alias ls='ls --color=auto'
  #alias dir='dir --color=auto'
  #alias vdir='vdir --color=auto'

  alias grep='grep --color=auto'
  alias fgrep='fgrep --color=auto'
  alias egrep='egrep --color=auto'
fi

# colored GCC warnings and errors
#export GCC_COLORS='error=01;31:warning=01;35:note=01;36:caret=01;32:locus=01:quote=01'
Ron
  • 5,900
  • 2
  • 20
  • 30