Cuando se usa la línea de comando, a menudo se vuelve muy abarrotada. Haciendo inconveniente examinar los comandos pasados y sus salidas, por ejemplo.
Me gustaría agregar una nueva línea cada vez antes de que se muestre el símbolo del sistema. Al igual que:
<clutter>
<blank line>
name@machine:~$
Yo uso el bash shell. ¿Cómo se puede lograr esto?
bash
command-line
Slothworks
fuente
fuente
Respuestas:
Una forma de lograr esto es modificando el
.bashrc
archivo. Simplemente coloque lo siguiente al final del.bashrc
archivo.Para explicar cómo funciona esto,
PS1
es la variable que contiene lo que se debe mostrar como solicitud. Todo lo que dice es "establecerPS1
el contenido anterior dePS1
, con un carácter de nueva línea antepuesto". Ponerlo en la.bashrc
mayoría de las distribuciones solo hace que bash lo ejecute cada vez que abre un shell interactivo (pero no un shell de inicio de sesión; consulte ¿ Diferencia entre Shell de inicio de sesión y Shell sin inicio de sesión? ).fuente
PS1="\n$PS1"
en una terminal tiene efecto instantáneo :)clear
(o presionarCtrl+l
) la primera línea que se muestra es una línea vacía. Para algunos podría ser un pequeño detalle, pero preferiría que la primera línea sea el aviso.Puedes usar PROMPT_COMMAND :
o:
fuente
PROMPT_COMMAND="printf '\n';$PROMPT_COMMAND"
? En su forma actual, parece que no hace nada cuando lo coloco en el.bashrc
archivo.printf
yecho
son muy livianos, por supuesto, pero aún no tiene sentido usarPROMPT_COMMAND
cuándoPS1
hará el trabajo.Alternativa: deje una línea en el
PS1=
indicador de su.bashrc
. Aquí está literalmente cómo configuro.bashrc
en cada máquina Linux que tengo:Como puede ver en mi ejemplo anterior, el nombre de usuario está codificado en la solicitud. Por supuesto, puede usar secuencias de escape que bash u otro shell (por ejemplo, ksh ) proporciona, pero una opción un poco más neutral sería usar la sustitución de parámetros con comandos como
whoami
(informar su nombre de usuario) yhostname
(obviamente, informa el nombre de host). Por ejemplo:Para obtener más cosas divertidas con el indicador,
.bashrc
y las expansiones de parámetros, consulte mis respuestas aquí:¿Cómo verificar el estado de la batería usando la terminal?
¿Cómo puedo hacer que mis terminales / proyectiles tengan diseños personalizados? y
¿Cómo mostrar un reloj en ejecución en la terminal antes del símbolo del sistema?
fuente
$(whoami)
lugar deusernamehardcoded
\u
y\h
para su nombre de usuario y nombre de host, respectivamente. Puede ver más caracteres especiales (por ejemplo, la hora actual en varios formatos) aquí