Introducción
En Linux, gran parte de su trabajo se realiza desde un símbolo del sistema, también conocido como shell. o BASH (Bourne Again Shell). El shell interpreta sus comandos y los pasa al sistema operativo para su ejecución.
Este tutorial le mostrará cómo personalizar o cambiar su indicador BASH de Linux .
Requisitos previos
- Un sistema que ejecuta Linux
- Acceso a una línea de comando/terminal
- Una cuenta de usuario con sudo o raíz privilegios
Mensaje BASH predeterminado
El indicador de BASH predeterminado es el que ve cuando abre por primera vez una terminal o línea de comando. Por lo general, se parece a esto:
[email protected]:~$
Alternativamente, puede verse así:
(base) [[email protected] ~]$
La primera parte del indicador le indica el usuario que está conectado actualmente. La segunda parte identifica el nombre de host del sistema.
El signo de tilde ~
indica que el directorio de trabajo actual es el directorio de inicio del usuario actual.
El signo de dólar $
significa que el usuario actual es un usuario estándar.
Un usuario raíz se identificaría con un signo hash #
.
Personalizar el aviso de Bash en Linux
Como la mayoría de las aplicaciones de Linux, BASH lee un archivo de configuración para determinar su comportamiento. Este archivo está en el directorio de inicio:
~/.bashrc
Antes de realizar cualquier cambio, cree una copia de seguridad de su archivo de configuración. Abra una ventana de terminal e ingrese lo siguiente:
cp ~/.bashrc ~/.bashrc.bak
Cambiar indicador de Bash en Linux de forma permanente
Abra el archivo de configuración de BASH para editarlo:
sudo nano ~/.bashrc
En este archivo, debería ver varias configuraciones diferentes. Algunos de ellos son líneas descriptivas en azul, sin comentarios con un #
señal. Algunas son blancas, lo que indica que están habilitadas.
Desplácese hasta la parte inferior del archivo de configuración. Agregue la siguiente línea:
PS1="MyTestPrompt> "
Puede reemplazar MyTestPrompt>
con cualquier cadena de texto que desee.
Guarde el archivo (ctrl-o
> Entrar ) y salir (ctrl-x
).
Actualice el servicio BASH para aplicar sus cambios. Introduzca lo siguiente:
source ~/.bashrc
Su indicador de línea de comandos debería cambiar a lo siguiente:
MyTestPrompt>
Crear un cambio temporal en el indicador BASH
Puede cambiar el aviso de BASH temporalmente mediante el export
dominio. Este comando cambia el aviso hasta que el usuario cierra la sesión.
Configure el aviso de BASH para que solo muestre el nombre de usuario ingresando lo siguiente:
export PS1="\u >"
El indicador debería cambiar inmediatamente para verse así:
username >
Puede restablecer el aviso cerrando la sesión y luego volviendo a iniciarla.
Opciones personalizadas populares para avisos BASH
Puede usar estas opciones en cualquier método, temporalmente con export
comando, o permanentemente editando el ~/.bashrc
archivo.
Mostrar nombre de usuario y nombre de dominio
Usa el –H
opción para mostrar un nombre de host completo:
export PS1="\u\H "
Debería ver el nombre de host en el aviso.
Agregar caracteres especiales
Puede agregar caracteres especiales al aviso colocándolos en orden alrededor de las opciones especiales:
export PS1="\[email protected]\H :"
Esto debería mostrar lo siguiente:
[email protected]:
Mostrar nombre de usuario más nombre de shell y versión
Ingrese lo siguiente para mostrar el nombre de usuario, el nombre del shell y la versión:
export PS1="\u >\s\v "
El aviso debería cambiar a lo siguiente:
username >bash4.4
Añadir fecha y hora al indicador BASH
Utilice las siguientes opciones para mostrar diferentes formatos de fecha y hora:
d
- Muestra la fecha de hoy en [día de la semana]/[mes]/[día]
export PS1="\[email protected]\H>\d "
t
- Muestra la hora actual en notación de 24 horas
export PS1="\[email protected]\H>\t "
T
– Muestra la hora actual en notación de 12 horas
export PS1="\[email protected]\H>\T "
A
- Muestra la hora actual en notación de 24 horas, con solo horas y minutos
export PS1="\[email protected]\H>\A "
Ocultar toda la información en el aviso de BASH
Use esto para evitar que los nombres de usuario o los nombres de host se muestren en el aviso:
export PS1="\W > "
Debería ver lo siguiente:
~ >
Diferenciar usuario raíz de usuario normal
El aviso normal de BASH muestra un $
firmar para un usuario normal. Si inicia sesión como usuario raíz, un #
se muestra el signo. Usa el $
código para indicar que el usuario actual no es un usuario root:
export PS1="\[email protected]\H \W:\$ "
Más opciones de solicitud de BASH
Aquí hay una lista de la mayoría de las opciones que puede usar para el aviso de BASH.
Es posible que algunos de estos comandos no funcionen en todas las versiones de Linux.
\a
– Un personaje de campana- \
d
– Fecha (día/mes/fecha) \D{format}
– Use esto para llamar al sistema para que responda con la hora actual\e
– Carácter de escape\h
– Nombre de host (corto)\H
– Nombre de host completo (nombre de dominio)\j
– Número de trabajos administrados por el shell\l
– El nombre base del dispositivo terminal del caparazón\n
– Nueva línea\r
– Retorno de carro\s
– El nombre de la concha\t
– Hora (hora:minuto:segundo)\@
– Hora, 12 horas AM/PM\A
– Hora, 24 horas, sin segundos\u
– Nombre de usuario actual\v
– Versión BASH\V
– Información adicional sobre la versión BASH\w
– Directorio de trabajo actual ($HOME está representado por ~)\W
– El nombre base del directorio de trabajo ($HOME está representado por ~)\!
– Muestra el número de este comando en el historial\#
– El número de comando de este comando- \
$
– Especifica si el usuario es root (#) o no ($) - \\ – Barra invertida
\[
– Inicie una secuencia de caracteres que no se muestran (útil si desea agregar un comando o un conjunto de instrucciones al indicador)\]
– Cerrar o finalizar una secuencia de caracteres no mostrados
Cómo cambiar el color del indicador BASH
Puede cambiar el color del texto de su indicador BASH. Por ejemplo, para cambiar temporalmente el texto de su indicador BASH a verde, ingrese lo siguiente:
export PS1="\e[0;32m[\[email protected]\h \W]\$ \e[0m"
Su aviso debe tener el mismo texto que el normal pero ser de color verde.
Aquí hay un desglose de los comandos:
• \e[
– Comenzar cambios de color
• 0;32m
– Especificar el código de color
• [\[email protected]\h \W]\$
– Este es el código para su indicador BASH normal ([email protected] Workingdirectory $
)
• \e[0m
– Salir del modo de cambio de color
El primer número en el código de color especifica el tipo de letra:
• 0
- Normal
• 1
– Negrita (brillante)
• 2
- tenue
• 4
– Subrayado
El segundo número indica el color que desea:
• 30
- Negro
• 31
- Rojo
• 32
- Verde
• 33
- Marrón
• 34
- Azul
• 35
- Púrpura
• 36
– Cian
• 37
– Gris claro
Además, si combina la opción brillante con un código de color, obtiene una versión más clara de ese color. Por ejemplo, si usa el código de color 1;32
, obtendrías un verde claro en lugar del verde normal. Si usa 1;33
, obtienes amarillo en lugar de marrón.
Cómo restablecer los cambios de BASH a la configuración predeterminada
Hay dos formas de restablecer los cambios. Para cambios temporales (utilizando export PS1=""
comando), puede restablecer el valor predeterminado cerrando la sesión.
Si editó el \.bashrc
archivo para realizar cambios permanentes, hay dos métodos para volver a la configuración predeterminada:
- Represente sus cambios como comentarios editando el archivo y agregando un
#
antes de cada cambio realizado. - Restaura la configuración predeterminada desde tu copia de seguridad ingresando:
sudo cp ~/.bashrc.bak ~/.bashrc
Comprensión de las diferentes partes del indicador BASH
Antes de continuar, restablezca el indicador de BASH al valor predeterminado. Si utilizó la export
cierre sesión y vuelva a iniciarla. Si editó su ~/.bashrc
archivo, coloque un #
firme antes de cada edición que haya realizado y guarde el archivo.
El aviso de BASH contiene cuatro valores diferentes:PS1, PS2, PS3 y PS4 .
PS significa Prompt Statement . Hasta ahora, hemos estado trabajando con el valor de PS1. Para ver el valor actual de PS1, ingrese lo siguiente:
echo $PS1
Dependiendo del sistema, el terminal devuelve algo como esto para la configuración predeterminada:
Es posible que reconozca el \[email protected]\h
opciones como el nombre de usuario y anfitrión . El w
La opción muestra el directorio de trabajo actual.
Ahora, muestra el valor de PS2:
echo $PS2
El sistema debería mostrar solo un paréntesis angular:
>
Repetir el mismo comando para PS3 debe estar en blanco.
Para PS4, verás un +
firmar.
Estos son los diferentes significados para las diferentes partes del aviso de BASH:
- PS1 – Esta es la pantalla principal de indicaciones. Aquí es donde establece caracteres especiales o información importante.
- PS2 – Esta es la cadena de solicitud secundaria. Esto generalmente se establece como un divisor entre la visualización del mensaje y la entrada de texto. También se usa para mostrar cuando un comando largo se divide en secciones con \ firmar.
- PS3 – Este es el aviso para
select
comando. - PS4 – Este es el indicador para ejecutar un script de shell en modo de depuración.
En la mayoría de las circunstancias, trabajará solo con la PS1 opción y tal vez la PS2 opción también.