prompts customize color change cambiar bashrc bash

customize - ¿Qué significa[[$-=*i*]] en bash?



customize bash linux (2)

Estoy instalando liquidprompt y en la documentación te piden que agregues [[ $- = *i* ]] && source ~/liquidprompt/liquidprompt en tu .bashrc .

Estoy tratando de entender la primera parte de la línea pero es difícil para un noob en bash como yo. Si alguien tiene un buen doc o la respuesta ...


Está comprobando si las opciones para el shell $- contienen una i en ellas. La i es para interactiva.

De la página del hombre Bash :

Una shell interactiva es una iniciada sin argumentos no opcionales y sin la opción -c cuya entrada estándar y error están conectadas a los terminales (según lo determinado por isatty (3)), o una iniciada con la opción -i. PS1 está configurado y $: incluye i si bash es interactivo, lo que permite que un script de shell o un archivo de inicio prueben este estado.

También relevante


$- contiene las opciones de shell actuales.

En [[ ... ]] , el lado derecho de a = se interpreta como un patrón si no se cita. Por lo tanto, *i* significa que posiblemente sea precedido o seguido por cualquier cosa.

En otras palabras, comprueba si la opción i está presente, es decir, si el shell actual es interactivo.