En muchos shells de unix (de hecho, aquellos de la familia Bourne principalmente), PS1 es la variable de entorno que define la «cadena de comandos principal» (según la literatura al respecto, pero yo prefiero referirme a ello como «el indicador de entradas del usuario, pasadas y siguiente»). El idicador del prompt es el texto que vemos adelante (o atrás, cuestión de perspectivas) a (o de) la introducción de un comando en la terminal. Usualmente es un «$» o «%» para usuarios regulares, y un «#» para el usuario root.
En unix y sistemas similares, varios shells permiten la personalización del prompt a través de variables como PS1, siendo los más relevantes:
- Bourne Again Shell (
bash)- Usa
PS1para el prompt principal. - También soporta
PS2(para continuación de comandos),PS3(para menús interactivos enselect), yPS4(para debugging conset -x). - Ejemplo:
export PS1='\u@\h:\w\$ '
- Usa
- Z Shell (
zsh)- Similar a
bash, usaPS1para el prompt principal. - También tiene
PS2,PS3,PS4, y variables adicionales comoPROMPT,RPROMPT(para mostrar texto alineado a la derecha). - Ejemplo:
PROMPT='%n@%m:%~%# '
- Similar a
- Korn Shell (
ksh,mksh,pdksh)- Usa
PS1,PS2yPS3. - Algunas versiones modernas admiten secuencias de escape avanzadas similares a
bash. - Ejemplo:
export PS1='ksh: $PWD > '
- Usa
- Almquist Shell (
ash) y Debian Almquist Shell (dash)- Usa
PS1, pero con soporte limitado (sin expansiones avanzadas). - Ejemplo:
export PS1='\u@\h:\w\$ '
- Usa
Pero, tambièn podemos encontrar otros shells que tienen su propia forma de configurar el prompt:
- C Shell (
csh) y TENEX C Shell (tcsh)- Usan
prompten lugar dePS1. - Ejemplo en
csh:set prompt = "%n@%m:%~% " - En
tcsh, también existeprompt2para líneas continuadas.
- Usan
- Fish Shell (
fish)- No usa
PS1. En su lugar, se configura con la variablefish_prompten un script de configuración. - Ejemplo:
function fish_prompt echo -n (whoami)'@'(hostname)':'(pwd)'$ ' end
- No usa
- Es Shell (
es) y Rc Shell (rc)- Usan
prompten lugar dePS1, similar acsh. - Ejemplo:
prompt='es> '
- Usan
La personalización del prompt, hoy en día va más allá de meras secuencias de texto como nombre de usuario, el nombre de host, o el directorio actual. Además de colores, podemos incluir emojis, para proporcionar información del sistema y más.
Siguiente

