iTerm2 loses "ls" colors if I ssh to a server
The server doesn't use a colored ls
command by default.
You can alias
your ls
command to always use colors in one of the server's shell configuration files (e.g. ~/.bashrc
) with the --color=auto option.
alias ls='ls --color=auto'
Some additional remarks:
-
If the server runs Linux, the above should be enough to get colors working. You can use an LSCOLORS generator to manually specify the colors in a shell configuration file by adding:
export LS_COLORS=…
-
If the server runs BSD / OS X, you additionally need the following for
ls
to automatically show colors (you then don't even need to specify an alias):export CLICOLORS=1
Also, here it's not
LS_COLORS
, butLSCOLORS
, and the syntax is different (see the LSCOLORS generator output).export LSCOLORS=…
Related videos on Youtube
MEM
Updated on September 18, 2022Comments
-
MEM over 1 year
Why do I lose
ls
' colors when I ssh to a server?I would like those colors to be preserved. Is this possible? Should one do something on the server side?
-
slhck almost 12 yearsDoes it work when you run
ls -G
? Does the server's shell haveCLICOLOR
andLSCOLORS
set? (i.e.echo $LSCOLORS
) -
MEM almost 12 yearsls -G don't show colors. If I do ls --color I get some. I don't know if the server shell as CLICOLOR and LSCOLORS set. If I echo CLICOLOR and LSCOLORS I got an empty line with nothing displayed.
-
-
MEM almost 12 yearsThanks. I believe I have no write access but, I'm using iterm2 with solarize. If I do ls --color what colors will it use ? Can we do something like export TERM =xterm-color or we can't do this since this is on our remote machine?