[2024-feb-29] Sad news: Eric Layton aka Nocturnal Slacker aka vtel57 passed away on Feb 26th, shortly after hospitalization. He was one of our Wiki's most prominent admins. He will be missed.

Welcome to the Slackware Documentation Project

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anteriorRevisión previa
Próxima revisión
Revisión previa
es:slackbook:bash [2019/02/24 21:36 (UTC)] – [Redirección de entrada y salida] rrampes:slackbook:bash [2019/03/04 00:39 (UTC)] (actual) – [Personalización] pedro.herrero
Línea 4: Línea 4:
  
 ====== ¿Qué es una shell? ====== ====== ¿Qué es una shell? ======
-Sí, ¿qué es exactamente una shell? Bueno, un shell es básicamente un entorno de usuario de línea de comandos. En esencia, es una aplicación que se ejecuta cuando el usuario inicia sesión y le permite ejecutar aplicaciones adicionales. En cierto modo, es muy similar a una interfaz gráfica de usuario, ya que proporciona un marco para ejecutar comandos y ejecutar programas. Hay muchos shells incluidos con una instalación completa de Slackware, pero en este libro solo hablaremos de **//bash//** (1), el Shell Bourne Again. Los usuarios avanzados pueden querer considerar el uso del potente **//zsh//** (1), y los usuarios familiarizados con los sistemas UNIX más antiguos pueden apreciar **//ksh//**. El verdadero masoquista podría elegir el **//csh//**, pero los nuevos usuarios deberían atenerse a **//bash//**.+Sí, ¿qué es exactamente una shell? Bueno, un shell es básicamente un entorno de usuario de línea de comandos. En esencia, es una aplicación que se ejecuta cuando el usuario inicia sesión y le permite ejecutar aplicaciones adicionales. En cierto modo, es muy similar a una interfaz gráfica de usuario, ya que proporciona un marco para ejecutar comandos y ejecutar programas. Hay muchos shells incluidos con una instalación completa de Slackware, pero en este libro solo hablaremos de **//bash//** (1), el Shell Bourne Again. Los usuarios avanzados pueden querer considerar el uso del potente **//zsh//** (1), y los usuarios familiarizados con los sistemas UNIX más antiguos pueden apreciar **//ksh//**. El verdadero masoquista podría elegir el **//csh//**, pero los nuevos usuarios deberían limitarse a **//bash//**.
  
  
 ====== Variables de entorno ====== ====== Variables de entorno ======
  
-Todos los shell facilitan ciertas tareas para el usuario al realizar un seguimiento de las cosas en las variables de entorno. Una variable de entorno es simplemente un nombre más corto para un poco de información que el usuario desea almacenar y utilizar más adelante. Por ejemplo, la variable de entorno PS1 le dice a **bash** cómo dar formato a su solicitud. Otras variables pueden indicar a las aplicaciones cómo ejecutarse. Por ejemplo, la variable LESSOPEN dice //**less**// para ejecutar ese lesspipe.sh preprocesador práctico del que hablamos, y LS_OPTIONS ajusta el color para //**ls**//.+Todos los shell facilitan ciertas tareas para el usuario al realizar un seguimiento de las cosas en las variables de entorno. Una variable de entorno es simplemente un nombre más corto para un poco de información que el usuario desea almacenar y utilizar más adelante. Por ejemplo, la variable de entorno PS1 le dice a **bash** cómo dar formato a su solicitud. Otras variables pueden indicar a las aplicaciones cómo ejecutarse. Por ejemplo, la variable LESSOPEN le dice //**less**// que ejecute lesspipe.sh, ese práctico preprocesador del que ya hablamos, y LS_OPTIONS ajusta el color para //**ls**//.
  
-Configurar tus propias variables de entorno es fácil. //**bash**// incluye dos funciones incorporadas para manejar esto: //**set**// y //**export**//. Además, una variable de entorno se puede eliminar utilizando //**unset**//. (No entre en pánico si accidentalmente desestabiliza una variable de entorno y no sabe lo que haría. Puede restablecer todas las variables predeterminadas cerrando sesión en su terminal y volviendo a iniciar sesión). Puede hacer referencia a una variable colocando un signo dólar ($) en frente de él.+Configurar sus propias variables de entorno es fácil. //**bash**// incluye dos funciones incorporadas para manejar esto: //**set**// y //**export**//. Además, una variable de entorno se puede eliminar utilizando //**unset**//. (No entre en pánico si accidentalmente desestabiliza una variable de entorno y no sabe lo que haría. Puede restablecer todas las variables predeterminadas cerrando sesión en su terminal y volviendo a iniciar sesión). Puede hacer referencia a una variable colocando un signo dólar ($) en frente de él.
  
 <code>darkstar:~$ set FOO=bar <code>darkstar:~$ set FOO=bar
Línea 25: Línea 25:
 </code> </code>
  
-Hay muchas variables de entorno importantes que utilizan //**bash**// y otras shells, pero una de las más importantes con las que se encontrará es PATH. PATH es simplemente una lista de directorios para buscar aplicaciones. Por ejemplo, top (1) se encuentra en //**/ usr/bin/top **//. Puede ejecutarlo simplemente especificando la ruta completa, pero si /usr/bin está en su variable PATH, //**bash**// comprobará si no especifica una ruta completa. Lo más probable es que primero lo note cuando intente ejecutar un programa que no esté en su RUTA como usuario normal, por ejemplo, //**ifconfig**// (8).+Hay muchas variables de entorno importantes que utilizan //**bash**// y otras shells, pero una de las más importantes con las que se encontrará es PATH. PATH es simplemente una lista de directorios para buscar aplicaciones. Por ejemplo, top (1) se encuentra en //**/usr/bin/top **//. Puede ejecutarlo simplemente especificando la ruta completa, pero si /usr/bin está en su variable PATH, //**bash**// comprobará allí si no especifica una ruta completa. Lo más probable es que primero lo note cuando intente ejecutar un programa que no esté en su RUTA como usuario normal, por ejemplo, //**ifconfig**// (8).
  
 <code> <code>
Línea 34: Línea 34:
 </code> </code>
  
-Arriba, ves un PATH típico para un usuario normal. Puede cambiarlo por su cuenta de la misma manera que cualquier otra variable de entorno. Sin embargo, si inicia sesión como root, verá que la raíz tiene un PATH diferente.+Arriba, ve un PATH típico para un usuario normal. Puede cambiarlo por su cuenta de la misma manera que cualquier otra variable de entorno. Sin embargo, si inicia sesión como root, verá que la raíz tiene un PATH diferente.
  
 <code> <code>
Línea 45: Línea 45:
 Los comodines son caracteres especiales que le dicen al shell que coincida con ciertos criterios. Si tiene experiencia con DOS, reconocerá * como un comodín que coincide con cualquier cosa. //**bash**// utiliza este comodín y varios otros para permitirle definir fácilmente lo que quiere hacer. Los comodines son caracteres especiales que le dicen al shell que coincida con ciertos criterios. Si tiene experiencia con DOS, reconocerá * como un comodín que coincide con cualquier cosa. //**bash**// utiliza este comodín y varios otros para permitirle definir fácilmente lo que quiere hacer.
  
-Este primero y el más común de estos es, por supuesto, *. El asterisco coincide con cualquier carácter o combinación de caracteres, incluido ninguno. Por lo tanto, b* coincidiría con cualquier archivo llamado b, ba, bab, babc, bcdb, etc. Un poco menos común es el ?. Este comodín coincide con una instancia de cualquier carácter, entonces b? coincidiría con ba y bb, pero no con b o bab.+Este primero y el más común de estos es, por supuesto, *. El asterisco coincide con cualquier carácter o combinación de caracteres, incluido ninguno. Por lo tanto, b* coincidiría con cualquier archivo llamado b, ba, bab, babc, bcdb, etc. Un poco menos común es el ?. Este comodín coincide con una sóla aparición de cualquier carácter, entonces b? coincidiría con ba y bb, pero no con b o bab.
  
 <code>darkstar:~$ touch b ba bab <code>darkstar:~$ touch b ba bab
Línea 73: Línea 73:
  
 ====== Completar con Tab ====== ====== Completar con Tab ======
-¿Todavía piensas que hay demasiado trabajo involucrado con el uso de comodines? Tienes razón. Hay una forma aún más fácil cuando se trata de nombres de archivo largos: completar con tab. Completar con tab le permite escribir solo el nombre de archivo suficiente para identificarlo de manera única, luego, al  presionar la tecla <key>TAB</key>, //**bash**// completará el resto por usted. Incluso si no ha escrito suficiente texto para identificar de forma única un nombre de archivo, el shell completará todo lo que pueda para usted. Si pulsa TAB una segunda vez, se mostrará una lista de todas las coincidencias posibles para usted.+¿Todavía piensa que el uso de comodines da demasiado trabajoTiene razón. Hay una forma aún más fácil cuando se trata de nombres de archivo largos: completar con tab. Completar con tab le permite escribir solo lo suficiente del nombre de archivo para identificarlo de manera única, luego, al  presionar la tecla <key>TAB</key>, //**bash**// completará el resto por usted. Incluso si no ha escrito suficiente texto para identificar de forma única un nombre de archivo, el shell completará todo lo que pueda para usted. Si pulsa TAB una segunda vez, se le mostrará una lista de todas las coincidencias posibles.
  
 ====== Redirección de entrada y salida ====== ====== Redirección de entrada y salida ======
  
-Una de las características definitorias de Linux y otros sistemas operativos similares a UNIX es la cantidad de aplicaciones pequeñas y relativamente simples y la capacidad de apilarlas juntas para crear sistemas complejos. Esto se logra redireccionando la salida de un programa a otro, o dibujando la entrada de un archivo o segundo programa.+Una de las características definitorias de Linux y otros sistemas operativos similares a UNIX es la cantidad de aplicaciones pequeñas y relativamente simples y la capacidad de apilarlas juntas para crear sistemas complejos. Esto se logra redireccionando la salida de un programa a otro, o extrayendo la entrada desde un archivo o segundo programa.
  
 Para comenzar, vamos a mostrarle cómo redirigir la salida de un programa a un archivo. Esto se hace fácilmente con el carácter '>'. Cuando //**bash**// ve el carácter '>', redirige toda la salida estándar (también conocida como stdout) al nombre de archivo que sigue. Para comenzar, vamos a mostrarle cómo redirigir la salida de un programa a un archivo. Esto se hace fácilmente con el carácter '>'. Cuando //**bash**// ve el carácter '>', redirige toda la salida estándar (también conocida como stdout) al nombre de archivo que sigue.
Línea 90: Línea 90:
 </code> </code>
  
-En este ejemplo, le mostramos lo que haría //**eco**// si su stdout no se redirigiera a un archivo, luego lo redirigimos al archivo ''/tmp/bar''. Si ''/tmp/bar'' no existe, se crea y la salida del //**eco**// se coloca dentro de él. Si /tmp/bar existiera, entonces su contenido es sobre-escrito. Esta podría no ser la mejor idea si desea mantener esos contenidos en su lugar. Afortunadamente, //**bash**// es compatible con '>>', que agregará la salida al archivo.+En este ejemplo, le mostramos lo que haría //**echo**// si su salida no se redirigiera a un archivo, luego lo redirigimos al archivo ''/tmp/bar''. Si ''/tmp/bar'' no existe, se crea y la salida de //**echo**// se coloca dentro de él. Si /tmp/bar existiera, entonces su contenido es sobre-escrito. Esta podría no ser la mejor idea si desea mantener esos contenidos en su lugar. Afortunadamente, //**bash**// es compatible con '>>', que agregará la salida al archivo.
  
 <code> <code>
Línea 114: Línea 114:
 También puede redirigir la entrada estándar (conocida como stdin) con el carácter '<', aunque no se usa muy a menudo. También puede redirigir la entrada estándar (conocida como stdin) con el carácter '<', aunque no se usa muy a menudo.
  
-<code>darkstar: ~ $ fromdos <dosfile </code>+<code> 
 +darkstar:~$ fromdos < dosfile  
 +</code>
  
-Finalmente, puede redirigir la salida de un programa como entrada a otro. Esta es quizás la característica más útil de //**bash**// y otros shells, y se logra usando el caracter '|'. (Este caracter se conoce como 'tubo' (pipe) . Si aquí alguien habla de entubar (piping) un programa a otro, esto es exactamente lo que significan).+Finalmente, puede redirigir la salida de un programa como entrada a otro. Esta es quizás la característica más útil de //**bash**// y otros shells, y se logra usando el caracter '|'. (Este caracter se conoce como 'tubería' (pipe). Si se habla de hacer una tubería (piping) de un programa a otro, esto es exactamente lo que significa).
  
 <code> <code>
Línea 127: Línea 129:
 </code> </code>
 ====== Administración de tareas ====== ====== Administración de tareas ======
-//**Bash**// tiene otra característica interesante que ofrecer, la capacidad de suspender y reanudar tareas. Esto le permite detener temporalmente un proceso en ejecución, realizar alguna otra tarea, luego reanudarlo o, opcionalmente, hacer que se ejecute en segundo plano. Al presionar <key>CTRL+z</key>, //**bash**// suspenderá el proceso en ejecución y lo devolverá a un aviso. Puede volver a ese proceso más tarde. Además, puede suspender múltiples procesos de esta manera indefinidamente. El comando incorporado de //**jobs**// mostrará una lista de tareas suspendidas. +//**Bash**// tiene otra característica interesante que ofrecer, la capacidad de suspender y reanudar tareas. Esto le permite detener temporalmente un proceso en ejecución, realizar alguna otra tarea, luego reanudarlo u, opcionalmente, hacer que se ejecute en segundo plano. Al presionar <key>CTRL+z</key>, //**bash**// suspenderá el proceso en ejecución y lo devolverá a la línea de comando o símbolo de sistema  (prompt). Puede volver a ese proceso más tarde. Además, puede suspender múltiples procesos de esta manera indefinidamente. El comando incorporado de //**jobs**// mostrará una lista de tareas suspendidas. 
-<code>darkstar: ~ $ jobs   + 
-[1] - Stopped vi TODO  +<code> 
-[2] + Stopped vi chapter_05.xml</code> +darkstar:~$ jobs 
-Para volver a una tarea suspendida, ejecute //**fg**// built-in para que la tarea suspendida más reciente vuelva al primer plano. Si tiene múltiples tareas suspendidas, también puede especificar un número para poner una de ellas en primer plano. +[1]-  Stopped                 vi TODO 
-<code>darkstar: ~ $ fg # "vi TODO"  +[2]+  Stopped                 vi chapter_05.xml 
-darkstar: ~ $ fg 1 # "vi chapter_05.xml"</code> +</code> 
-También puede hacer una tarea de fondo con (sorpresa) //**bg**// . Esto permitirá que el proceso continúe ejecutándose sin mantener el control de su shell. Puede volver a ponerlo en primer plano con //**fg**// de la misma manera que con las tareas suspendidas.+ 
 +Para volver a una tarea suspendida, ejecute el comando incorporado //**fg**// para volver a poner en primer plano la tarea suspendida más reciente. Si tiene múltiples tareas suspendidas, también puede especificar un número para poner una de ellas en primer plano. 
 + 
 +<code> 
 +darkstar:~$ fg # "vi TODO" 
 +darkstar:~$ fg 1 # "vi chapter_05.xml" 
 +</code> 
 + 
 +También puede poner en segundo plano una tarea (sorpresa) //**bg**//. Esto permitirá que el proceso continúe ejecutándose sin mantener el control de su shell. Puede volver a ponerlo en primer plano con //**fg**// de la misma manera que con las tareas suspendidas.
  
 ====== Terminales ====== ====== Terminales ======
 Slackware Linux y otros sistemas operativos similares a UNIX permiten a los usuarios interactuar con ellos de muchas maneras, pero el más común y posiblemente el más útil es la terminal. En la antigüedad, las terminales eran teclados y monitores (a veces incluso ratones) conectados a un mainframe o servidor a través de conexiones en serie. Hoy en día sin embargo, la mayoría de las terminales son virtuales; Es decir, existen solo en software. Las terminales virtuales permiten a los usuarios conectarse a la computadora sin requerir hardware costoso y, a menudo, incompatible. Más bien, un usuario solo necesita ejecutar el software y se les presenta un terminal virtual (generalmente) altamente personalizable. Slackware Linux y otros sistemas operativos similares a UNIX permiten a los usuarios interactuar con ellos de muchas maneras, pero el más común y posiblemente el más útil es la terminal. En la antigüedad, las terminales eran teclados y monitores (a veces incluso ratones) conectados a un mainframe o servidor a través de conexiones en serie. Hoy en día sin embargo, la mayoría de las terminales son virtuales; Es decir, existen solo en software. Las terminales virtuales permiten a los usuarios conectarse a la computadora sin requerir hardware costoso y, a menudo, incompatible. Más bien, un usuario solo necesita ejecutar el software y se les presenta un terminal virtual (generalmente) altamente personalizable.
  
-Las terminales virtuales más comunes (en el sentido de que cada máquina Slackware Linux tendrá al menos una) son los gettys. //**agetty**// (8) ejecuta seis instancias de forma predeterminada en Slackware, y permite a los usuarios locales (aquellos que pueden sentarse físicamente frente a la computadora y escribir desde el teclado) iniciar sesión y ejecutar aplicaciones. Cada uno de estos detalles está disponible en diferentes dispositivos tty a los que se puede acceder por separado presionando la <key>ALT</key> tecla y una de las teclas de función desde el <key>F1</key> principio <key>F6</key>. El uso de estos gettys le permite iniciar sesión varias veces, tal vez como diferentes usuarios, y ejecutar aplicaciones en las carcasas de esos usuarios de forma silenciosa. Esto se hace comúnmente con servidores que no tienen //**X**// instalado, pero se puede hacer en cualquier máquina.+Las terminales virtuales más comunes (en el sentido de que cada máquina Slackware Linux tendrá al menos una) son los gettys. //**agetty**// (8) habilita seis terminales de forma predeterminada en Slackware, y permite a los usuarios locales (aquellos que pueden sentarse físicamente frente a la computadora y escribir desde el teclado) iniciar sesión y ejecutar aplicaciones. Cada uno de estos gettys está disponible en diferentes dispositivos tty a los que se puede acceder por separado presionando la tecla <key>ALT</key> y una de las teclas de función desde el <key>F1</key> principio <key>F6</key>. El uso de estos gettys le permite iniciar sesión varias veces, tal vez como diferentes usuarios, y ejecutar aplicaciones en los shells de esos usuarios de forma silenciosa. Esto se hace comunmente con servidores que no tienen //**X**// instalado, pero se puede hacer en cualquier máquina.
  
-En computadoras de escritorio, computadoras portátiles y otras estaciones de trabajo donde el usuario prefiere una interfaz gráfica proporcionada por //**X**// , la mayoría de las terminales son gráficos. Slackware incluye muchos terminales gráficos diferentes, pero los más utilizados son la //**consola**// de KDE y la //**Terminal**// de XFCE (1), así como el antiguo modo de espera, xterm (1). Si está utilizando una interfaz gráfica, verifique sus barras de herramientas o menús. Cada entorno de escritorio o administrador de ventanas tiene una terminal virtual (a menudo llamada emuladora de terminal), y todas están etiquetadas de manera diferente. Sin embargo, normalmente, los encontrará en un submenú "Sistema" en entornos de escritorio. Ejecutar cualquiera de estos te dará una terminal gráfica y automáticamente ejecutará tu shell predeterminado.+En computadoras de escritorio, computadoras portátiles y otras estaciones de trabajo donde el usuario prefiere una interfaz gráfica proporcionada por //**X**//, la mayoría de los terminales son gráficos. Slackware incluye muchos terminales gráficos diferentes, pero los más utilizados son la //**consola**// de KDE y la //**Terminal**// de XFCE (1), así como el antiguo modo de espera, xterm (1). Si está utilizando una interfaz gráfica, verifique sus barras de herramientas o menús. Cada entorno de escritorio o administrador de ventanas tiene una terminal virtual (a menudo llamada emuladora de terminal), y todas están etiquetadas de manera diferente. Sin embargo, normalmente, las encontrará en un submenú "Sistema" en entornos de escritorio. Ejecutar cualquiera de estas opciones le dará una terminal gráfica y automáticamente ejecutará su shell predeterminado.
  
 ====== Personalización ====== ====== Personalización ======
 A estas alturas ya debería estar bastante familiarizado con //**bash**// y es posible que haya notado algún comportamiento extraño. Por ejemplo, cuando inicia sesión en la consola, aparece un mensaje que se parece un poco a esto. A estas alturas ya debería estar bastante familiarizado con //**bash**// y es posible que haya notado algún comportamiento extraño. Por ejemplo, cuando inicia sesión en la consola, aparece un mensaje que se parece un poco a esto.
-<code>alan @ darkstar: ~ $ </code>+ 
 +<code> 
 +alan@darkstar:~$ </code> 
 Sin embargo, a veces verá un mensaje mucho menos útil como este. Sin embargo, a veces verá un mensaje mucho menos útil como este.
-<code>bash-3.1 $ </code>+<code> 
 +bash-3.1$ </code>
  
-La causa aquí es una variable de entorno especial que controla el indicador de //**bash**// . Algunos shells se consideran shells de //"inicio de sesión"// y otros son shells //"interactivos"// , y ambos tipos leen diferentes archivos de configuración cuando se inician. Iniciar sesión leer conchas /etc/profile y ~/.bash_profile cuando se ejecute. Los shell interactivos leen en su ~/.bashrc lugar. Esto tiene algunas ventajas para los usuarios avanzados, pero es una molestia común para muchos usuarios nuevos que desean el mismo entorno cada vez que ejecutan //**bash**// y no importa la diferencia entre inicio de sesión y shells interactivos. Si esto se aplica a usted, simplemente edite su propio archivo ~ /.bashrc e incluya las siguientes líneas. (Para obtener más información sobre los diferentes archivos de configuración utilizados, lea la sección INVOCACIÓN de la página de manual de //**bash**// ).+La causa aquí es una variable de entorno especial que controla el indicador de //**bash**//. Algunos shells se consideran shells de //"inicio de sesión"// y otros son shells //"interactivos"//, y ambos tipos leen diferentes archivos de configuración cuando se inician. Los shells de inicio de sesión leen /etc/profile y ~/.bash_profile cuando se ejecutan. Los shell interactivos leen en su lugar ~/.bashrc. Esto tiene algunas ventajas para los usuarios avanzados, pero es una molestia común para muchos usuarios nuevos que desean el mismo entorno cada vez que ejecutan //**bash**// y no importa la diferencia entre inicio de sesión y shells interactivos. Si esto se aplica a usted, simplemente edite su propio archivo ~ /.bashrc e incluya las siguientes líneas. (Para obtener más información sobre los diferentes archivos de configuración utilizados, lea la sección INVOCACIÓN de la página de manual de //**bash**//).
 <code># ~/.bashrc <code># ~/.bashrc
 . /etc/profile . /etc/profile
 . ~/.bash_profile</code> . ~/.bash_profile</code>
-Cuando utilice lo anterior, todos sus shells de inicio de sesión e interactivos tendrán la misma configuración de entorno y se comportarán de manera idéntica. Ahora, cada vez que deseamos personalizar una configuración de shell, solo tenemos que editar ~/.bash_profile los cambios específicos del usuario y /etc/profile la configuración global. Comencemos configurando el prompt.+Cuando utilice lo anterior, todos sus shells de inicio de sesión e interactivos tendrán la misma configuración de entorno y se comportarán de manera idéntica. Ahora, cada vez que deseemos personalizar una configuración de shell, solo tendremos que editar ~/.bash_profile para los cambios específicos del usuario y /etc/profile para la configuración global. Comencemos configurando el prompt.
  
-//**Los**// mensajes de //**bash**// vienen en todas las formas, colores y tamaños, y cada usuario tiene sus propias preferencias. Personalmente, prefiero mensajes cortos y simples que ocupan un mínimo de espacio, pero muchas veces he visto y usado mensajes de línea múltiple. Un amigo mío incluso incluyó ASCII -art en su mensaje de bash. Para cambiar su aviso, solo necesita cambiar su variable PS1. De forma predeterminada, Slackware intenta configurar su variable PS1 de esta manera:+//**Los**// mensajes de //**bash**// vienen en todas las formas, colores y tamaños, y cada usuario tiene sus propias preferencias. Personalmente, prefiero mensajes cortos y simples que ocupen un mínimo de espacio, pero muchas veces he visto y usado mensajes de línea múltiple. Un amigo mío incluso incluyó ASCII -art en su mensaje de bash. Para cambiar su aviso, solo necesita cambiar su variable PS1. De forma predeterminada, Slackware intenta configurar su variable PS1 de esta manera:
 <code>darkstar:~$ echo $PS1 <code>darkstar:~$ echo $PS1
 \u@\h:\w\$ </code> \u@\h:\w\$ </code>
-Sí, esta pequeña pieza de figuras de aspecto gracioso controla tu indicador de bash . Básicamente, todos los caracteres de la variable PS1 se incluyen en el indicador, a menos que sea un escape por a <key>\</key>, que le dice a //**bash**// que lo interprete. Hay muchas secuencias de escape diferentes y no podemos discutirlas todas, pero las explicaré. El primer "\u" se traduce al nombre de usuario del usuario actual. "\H" es el nombre de host de la máquina a la que está conectado el terminal. "\W" es el directorio de trabajo actual, y "\$" muestra <key>#</key> un <key>$</key> signo o un signo, dependiendo de si el usuario actual es root o no. Una lista completa de todas las secuencias de escape rápido se encuentra en el Página de manual de //**bash**// en la sección PROMPTING.+Sí, esta pequeña pieza de figuras de aspecto gracioso controla su indicador de bash. Básicamente, todos los caracteres de la variable PS1 se incluyen en el indicador, a menos que sea un escape por a <key>\</key>, que le dice a //**bash**// que lo interprete. Hay muchas secuencias de escape diferentes y no podemos discutirlas todas, pero las explicaré. El primer "\u" se traduce al nombre de usuario del usuario actual. "\H" es el nombre de host de la máquina a la que está conectado el terminal. "\W" es el directorio de trabajo actual, y "\$" muestra un signo <key>#</key> un signo <key>$</key> , dependiendo de si el usuario actual es root o no. Una lista completa de todas las secuencias de escape rápido se encuentra en la página de manual de //**bash**// en la sección PROMPTING.
  
 Ya que hemos pasado por todo este problema para discutir el indicador predeterminado, pensé que me tomaría un tiempo mostrarle un par de ejemplos y los valores de las variables PS1 necesarios para usarlos. Ya que hemos pasado por todo este problema para discutir el indicador predeterminado, pensé que me tomaría un tiempo mostrarle un par de ejemplos y los valores de las variables PS1 necesarios para usarlos.
Línea 168: Línea 182:
 HOST: \H - JOBS: \j - TTY: \l\n\u@\w:\$</code> HOST: \H - JOBS: \j - TTY: \l\n\u@\w:\$</code>
  
-Para obtener más información sobre cómo configurar el mensaje de bash, incluida la información sobre cómo configurar mensajes de colores, consulte /usr/doc/Linux-HOWTOs/Bash-Prompt-HOWTO. Después de leer eso por un corto tiempo, tendrás una idea de cuán poderosas pueden ser tus indicaciones de //**bash**// . ¡Una vez incluso tuve un aviso que me proporcionó información meteorológica actualizada, como la temperatura y la presión barométrica!+Para obtener más información sobre cómo configurar el mensaje de bash, incluida la información sobre cómo configurar mensajes de colores, consulte /usr/doc/Linux-HOWTOs/Bash-Prompt-HOWTO. Al poco tiempo de leerlotendrá una idea de cuán poderosas pueden ser sus ordenes de //**bash**//. ¡Una vez incluso tuve un aviso que me proporcionó información meteorológica actualizada, como la temperatura y la presión barométrica!
  
 ====== Navegación del capítulo ====== ====== Navegación del capítulo ======
 es:slackbook:bash ()