GNU/Linux >> Tutoriales Linux >  >> Ubuntu

¿Por qué no aparecen los colores de Git cuando se usa el reloj?

Al ejecutar git status -sb Veo:

Quiero watch (de procps-ng 3.3.3) un repositorio. El --color se supone que la opción mantiene los colores.

Curiosamente, funciona con ls :

$ watch --color "ls --color"

Mostrando:

Sin embargo, para git los colores desaparecen:

$ watch --color "git status -sb"

Entonces, ¿por qué watch mostrar colores de ls pero no de git salida?

Respuesta aceptada:

Las siguientes afirmaciones son verdaderas:

  • watch ejecuta el comando en un nuevo shell, sh .
  • .bashrc alias ls como ls --color=auto para habilitar los colores.
  • sh no hereda ni usa bash alias.

Así que cuando watch ejecuta ls , no pide colores, solo ejecuta la versión antigua. Puede eludir esto pero, como señala aditya, también debe habilitar los colores en watch para que los procese correctamente.

Un ejemplo de trabajo para ls es:

watch --color -- ls --color=always

Si no pasa --color para mirar, verás un montón de códigos de colores desagradables en línea.

ls --color se interpreta como ls --color=always .

ls --color=auto no color de impresión en el reloj. Esto sugiere que está infiriendo la compatibilidad con el color del propio terminal.

Para obtener más información sobre el motivo, podemos probar si la carcasa del reloj cree que es un terminal real:

$ bash -c '[[ -t 1 ]] && echo "real terminal"'
real terminal

$ watch -- "bash -c '[[ -t 1 ]] && echo "real terminal"'"
# ... nothing.

Sospecho que algunas aplicaciones buscan eso (o algo similar) para saber si deben activar los colores o no.


Ubuntu
  1. Al usar Vlc, ¿por qué el protector de pantalla sigue activándose?

  2. Git Autocompletar?

  3. ¿Por qué se muestra una sola barra invertida cuando se usan comillas?

  4. ¿Por qué las instantáneas de Back In Time parecen ser tan grandes?

  5. ¿Por qué usar innodb_file_per_table?

¿Por qué no es posible grabar un DVD multisesión con Brasero?

¿Por qué Shotwell tiene las posiciones X e Y invertidas cuando se usa Recortar?

Usando el comando Watch en Linux

Cómo:una introducción al uso de Git

¿Por qué mi compilación de Ubuntu se retrasa al mover ventanas?

Uso de / al usar cd