Question: I am using 'zsh'. In some directory, when I do 'ls --color=tty'. I see some directories have
'blue text' with 'green background', which makes them hard to read.

Can you please tell me how to configure this?

Answer: 
Assuming you are using GNU `ls`, you can [specify the colors with the environment variable LS\_COLORS](http://www.gnu.org/software/coreutils/manual/html_node/dircolors-invocation.html#dircolors-invocation) (note that this is a GNU `ls` feature and not specific to zsh). 

GNU Coreutils has a program called `dircolors` to help you convert an easy to edit configuration file into a proper (complicated) LS\_COLORS variable. See `man dircolors` for the command, and `man dir_colors` for the configuration file syntax. 

You can

1. use `dircolors --print-database >! dircolors.default` to save the defaults (it contains some explanation text) and then modify it.
2. Google for fancy pre-configured dircolors files (such as this <https://github.com/seebi/dircolors-solarized> (I've got no relation to this)).

Once done, you'll need `dircolors` to turn that into a proper LS\_COLORS. Note that `dircolors` outputs in bash and csh formats, for `zsh` you should use the `bash`-formatted output.

PS: Use `ls --color=auto` instead of `ls --color=tty`.
The following works for me in zsh 5.7.1 (x86\_64-apple-darwin19.0)).

These lines in my .zshrc without any additional incantations configure the colours for ls:

```bsh
export CLICOLOR=1
export LSCOLORS=ExGxBxDxCxEgEdxbxgxcxd
alias ll="ls -alG"

```

For the configuration options you can use in LSCOLORS you can simply run `man ls` and find the section for LSCOLORS. CLICOLOR is explained there as well.