ls salida no tiene color mientras SSHing a otra máquina con iTerm2, pero sí con Terminal

7

Tal como lo dice el título, cuando ssh a mi trabajo, el servidor Fedora con iTerm2 no obtengo el color ls de salida. Cuando ssh en el mismo servidor con la aplicación Terminal predeterminada de OS X, la salida de color ls funciona bien.

EDITAR: Todas las demás salidas ls están coloreadas correctamente. Tanto el iTerm2 como el Terminal muestran ls localmente en color, y el Terminal funciona correctamente cuando el SSH pasa a la máquina de trabajo.

La única vez que no obtengo ls output coloreado es cuando uso iTerm2 a SSH en mi máquina de trabajo. El terminal produce color ls de salida cuando SSH'd a mi máquina de trabajo y también lo hace PuTTY en Windows.

Cuando SSH entró en mi máquina de trabajo desde iTerm2, 'ls -G' tampoco hace ninguna diferencia. Todavía no hay coloración en la salida de ls.

Además, cuando SSH condujo a mi máquina de trabajo desde iTerm2, la cosa solo en la que no veo color es la salida de ls . Mi indicador está coloreado, vim funciona con color, y si echo $TERM veo xterm-256color .

¿Alguna idea?

    
pregunta Pumpinglemma 14.05.2012 - 17:20

2 respuestas

10

ls de salida con colores ( ls -G ) no es la opción predeterminada. Ejecute el siguiente comando en su terminal para habilitar los colores de ls de forma predeterminada:

echo "alias ls='ls -G'" >> ~/.bashrc
source ~/.bashrc

Esta y todas las futuras sesiones de terminal ahora mostrarán los colores correctamente.

Si aún no ves colores en tu sesión remota (o local), sigue estos pasos:

En iTerm verifique que esté enviando un tipo de terminal que admita colores. Abre la ventana de preferencias - > Perfiles - > Predeterminado - > Terminal. Recomiendo poner xterm-256color como tipo de terminal.

Mientrasestéconectadoalamáquinaremota,ejecutels-GyabralaspreferenciasdeiTermnuevamente:ventanadepreferencias->perfiles->Predeterminado->Colores.AjusteloscoloresANSIygireelcontrastemínimohaciaabajohastaqueloscoloresenlaventanadelterminalcomiencenamostrarcolor.

Si el sistema remoto admite ls --color=always , elimine los alias existentes en ~ / .profile o ~ / .bashrc y actualice de la siguiente manera:

echo "alias ls='ls --color=always'" >> ~/.bashrc
    
respondido por el Aaron Lake 14.05.2012 - 17:24
9

Tuve el mismo problema. Descubrí que el tema de color que usé en iTerm (solarizado) redefinió los colores ls usados en el host ssh haciendo que sea imposible distinguirlos.

Puedes probar lo siguiente para verificar si no es el caso para ti:

LS_COLORS="di=07;31" ls    # this will list directories as black on red 

Si esto muestra colores, es posible que deba redefinir los colores en la máquina Linux. El siguiente comando define (algunos) colores de ls para que sean similares a los valores predeterminados de OS-X:

LS_COLORS="di=00;34:ln=00;35:so=00;32:pi=01;33:ex=00;31:bd=00;34" ls

Para editar los colores en linux, consulte la página del manual de dircolors. También puede leer lo siguiente sobre cómo configurar colores desde .bashrc: enlace

    
respondido por el muro 26.06.2012 - 11:47

Lea otras preguntas en las etiquetas