Cómo personalizar su caparazón de Bash con Shopt

toadmin. ru

Si ajusta el comportamiento de su shell de Bash con Shopt, puede controlar más de 50 configuraciones. Le mostraremos cómo personalizar su sistema Linux de la manera que le gusta.

Almacenar incrustado

La tienda incorporada se incluye con todas las versiones de Bash Shell, por lo que no necesita instalar nada. El número de opciones disponibles en la tienda ha aumentado constantemente a lo largo de los años. Entonces, cuanto más antigua sea la versión de Bash, más corta será la lista de opciones para comprar.

Si algo no funciona en su computadora, consulte la entrada en la página manual para Bash y asegúrese de que la opción esté disponible en su versión de Shopt.

Cubrimos todas las opciones de tiendas a continuación. También describimos cómo usarlo y dar algunos ejemplos. A partir de ahí, puede consultar la página de ayuda de Bash o el Manual de referencia de GNU Bash para ver si alguna de estas opciones suena útil o atractiva.

Algunas opciones de compra están habilitadas de forma predeterminada y son parte del comportamiento predeterminado de Bash. Puede habilitar la opción de compra como un cambio a corto plazo para BASH. Luego volverá al comportamiento predeterminado cuando cierre el shell.

Sin embargo, si desea que el comportamiento modificado esté disponible cuando ejecuta el shell bash, puede hacer que los cambios sean permanentes.

Opciones de compra

Hay 53 opciones de tienda. Si usa el comando shopT sin ningún parámetro, los enumerará. Si enrutamos la salida a través del comando WC, contará las cadenas, palabras y caracteres para nosotros. Dado que cada opción de compra está en una línea separada, el número de líneas es el número de opciones.

Shopt |WC

tienda |wc en una ventana terminal.

Para ver todas las opciones, podemos enrutar la salida a través del comando de columna para mostrar los nombres de opciones en columnas, o podríamos convertir esto en menos.

Shopt |columna

tienda |columna en una ventana terminal.

Buscando Shopt en el manual de Linux

La sección sobre Shopt y sus opciones se encuentra en la sección Bash del Manual de Linux. La sección Bash contiene más de 6000 líneas. Puede encontrar la descripción de Shopt con mucho desplazamiento o simplemente buscarla en el manual.

Para hacer esto, abra el manual en la sección Bash:

Hombre Bash

Hombre Bash en una ventana terminal.

En el manual, presione / para comenzar a buscar. Escriba lo siguiente y presione Entrar:

Assoc_EXPAND_ONCE

Una sección del manual dedicada a Bash, con una consulta de búsqueda ingresada en la línea de comando en una ventana de terminal.

El comienzo de la sección Shoptoption aparecerá en la ventana del hombre.

Una guía que muestra la sección Opciones Shopt de la página del manual de Bash en una ventana de terminal.

Configuración y parámetros de falta

Para establecer y no ser establecidos en los parámetros de ShopOptoPtion, use los siguientes comandos:

-S: establecer o habilitar.-u: deshabilitar o deshabilitar.

Dado que algunos parámetros están habilitados de forma predeterminada, también es conveniente verificar qué parámetros están habilitados. Puede hacer esto con los parámetro s-s y-U sin usar el nombre del parámetro. Esto obliga a Shopt a enumerar las opciones habilitadas y deshabilitadas.

Shop t-s

Shop t-s en una ventana de terminal.

Shop t-u |columna

Shop t-u |columna en una ventana terminal.

Puede usar la opción ShopT sin los comando s-s o-u para ver el estado de activación o apagado para cada opción.

Por ejemplo, podemos ingresar lo siguiente para verificar la configuración de la opción HistVerify:

Shopt Histverify

Podemos ingresar lo siguiente para habilitarlo:

Shop t-S Histverify

Luego podemos ingresar lo siguiente para verificarlo nuevamente:

Shopt Histverify

Shopt Histverify en una ventana de terminal.

El parámetro HistVerify cambia la forma en que funciona un aspecto del comando de historia. Normalmente, si le pide al historial que repita un comando referiéndose a él por número, por ejemplo! 245, el comando se recupera del historial de comando y se ejecuta de inmediato.

Si prefiere probar el comando para asegurarse de que cumpla con sus expectativas y editarlo si es necesario, ingrese lo siguiente para habilitar la opción ShopT Histverify:

! 245 en la ventana del terminal.

El comando se extrae y se muestra en la línea de comando. Puede eliminarlo, editarlo o ejecutarlo presionando Enter.

Opción AutoCD

Con la opción AutoCD establecida en ON, si escribe el nombre del directorio en la línea de comando y presiona Entrar, se procesará como si hubiera escrito CD antes.

Ingresamos lo siguiente para habilitar la opción AutoCD:

Shop t-S AutoCd

Luego ingresamos el nombre del directorio:

Documentos

Shop t-S AutoCd en una ventana de terminal.

La opción CDSPell

Cuando la opción CDSPell está habilitada, Bash corrige automáticamente errores de ortografía simples y errores tipográficos en los nombres de los directorio.

Escribimos lo siguiente para establecer la opción CDSPell:

Shop t-S CDSPELL

Para tratar de navegar a un directorio minúscula que debería tener una letra inicial en mayúsculas, escribimos lo siguiente:

documentos de CD

Luego podemos escribir lo siguiente para probar un nombre de directorio con una «t» adicional en su nombre:

CD ../pictures

Shop t-S CDSPell en una ventana de terminal.

Bash cambia en cada directorio, independientemente de los errores de ortografía.

El parámetro xpg_eco

Cuando el parámetro XPG_ECHO se establece en ON, el comando echo obedecerá a los caracteres escapados, como n para una nueva línea y t para una pestaña horizontal.

Primero ingresamos lo siguiente para asegurarnos de que el parámetro esté configurado:

Shop t-s xpg_eco

Luego incluimos N en la línea que vamos a pasar al eco:

Echo "Esta es la línea Onenthis es la línea dos".

Shop t-S xpg_eco en una ventana de terminal.

El carácter de Newline escapado provoca una ruptura de línea en la salida.

Esto produce el mismo comportamiento qu e-e (permitir interpretación de escape) echo, pero xpg_echo permite que sea la acción predeterminada.

La opción dotglob

La opción dotglob debe tratarse con cierta precaución. Permite incluir archivos y directorios que comienzan con un punto (.) en extensiones de nombre o «comodines». Estos se denominan «archivos de puntos» o «directorios de puntos» y, por lo general, están ocultos. El parámetro dotglob ignora el punto al comienzo de sus nombres.

Primero buscaremos archivos o directorios que terminen en «computerman» escribiendo lo siguiente:

ls * friki

Se encuentra un archivo y se especifica. Luego habilitaremos la opción dotglob escribiendo lo siguiente:

shop t-s dotglob

Ejecutamos el mismo comando ls para buscar archivos y directorios que terminen en «geek»:

ls * friki

ls * geek en una ventana terminal.

Esta vez se encuentran y enumeran dos archivos, uno de los cuales es dotglob. Debe tener cuidado con rm y mv cuando tiene habilitada la opción dotglob.

La opción nocaseglob

La opción nocaseglob es similar a la opción dotglob, excepto que nocaseglob lo obliga a ignorar las diferencias en mayúsculas y minúsculas en los nombres de archivos y directorios al exponer los nombres.

Ingresamos lo siguiente para buscar archivos o directorios que comiencen con «cómo»:

es como*

Se encuentra un archivo y se especifica. Ingresamos lo siguiente para habilitar la opción nocaseglob:

shop t-s nocaseglob

Luego repetimos el comando ls:

es como*

ls Cómo * en una ventana terminal.

Se encuentran dos archivos, uno de los cuales contiene letras mayúsculas.

Haciendo cambios a los persistentes

Los cambios que hagamos solo tendrán efecto hasta que cerremos el shell Bash actual. Para hacerlos permanentes para diferentes sesiones de shell, debemos agregarlos a nuestro archivo «. bashrc».

En su directorio de inicio, escriba el siguiente comando para abrir el archivo «. bashrc» en el editor de texto gráfico de Gedit (o cámbielo según corresponda para usar el editor que prefiera):

gedit . bashrc

Esto abrirá el editor gedit con el archivo «. bashrc» cargado. Verás que algunas entradas de compras ya están en él.

El editor GEDIT con . BASHRC cargado en él y las opciones de compra resaltadas.

También puede agregar sus propias opciones de compra aquí. Cuando los haya agregado, guarde sus cambios y cierre el editor. Ahora, cuando abra un nuevo shell Bash, sus opciones se configurarán para usted.

Opciones disponibles a la vista

Es cierto que el comando shopt tiene muchas opciones, pero no tienes que lidiar con todas ellas a la vez, si es que alguna vez lo haces. Debido a que hay tantos, es probable que algunos de ellos no sean de su interés.

Por ejemplo, hay un grupo que hace que Bash funcione de manera compatible con versiones anteriores específicas. Esto puede ser útil para algunos, pero es bastante nicho.

Puede consultar la página del Manual de Bash o el Manual de referencia de GNU Bash. Decide qué opciones tendrán sentido para ti y luego experimente con ellas. Solo tenga cuidado con las opciones que afectan la forma en que están expuestos los nombres de los archivos y el directorio. Pruébalos con un comando suave como LS hasta que te acostumbres a ellos.