Comment personnaliser le shell bash avec shopt

Contenu

Une invite de terminal sur un ordinateur portable Linux.

Si vous ajustez le comportement de votre shell Bash avec shopt, peut contrôler plus de 50 configurations. Nous allons vous montrer comment adapter votre système Linux à votre convenance.

La boutique intégrée

Les shopt intégré fait partie de toutes les versions du Bash coquille, il n'est donc pas nécessaire d'installer quoi que ce soit. Le nombre d'alternatives disponibles dans shopt n'a cessé d'augmenter au fil des années. Pour cela, plus la version de Bash est ancienne, plus la liste des shopt les alternatives seront.

Si quelque chose ne semble pas fonctionner sur votre machine, vérifier la man entrée de page pour Bash et vérifiez que l'option est disponible dans votre version de shopt.

Nous couvrons tout shopt options ci-dessous. Nous décrivons également comment l'utiliser et partageons quelques exemples. De là, Vous pouvez vous référer à la page de manuel Bash ou Manuel de référence GNU Bash pour voir si l'une de ces options semble utile ou attrayante.

Certains shopt Les alternatives sont activées par défaut et font partie du comportement par défaut de Bash. Vous pouvez activer un shopt option comme un passage à court terme à bash. Il reviendra plus tard au comportement par défaut lorsque vous fermerez le shell.

Malgré cela, si vous voulez qu'un comportement modifié soit disponible chaque fois que vous démarrez un shell bash, peut rendre les changements permanents.

Alternatives d'achat

Il y a 53 shopt options. Si vous utilisez le shopt commande sans aucune option, les répertorie. Si nous canalisons la sortie via le wc commander, ce sera compter les lignes, mots et caractères pour nous. Parce que chaque shopt L'option est sur sa propre ligne, le nombre de lignes est le nombre d'alternatives.

Nous écrivons ce qui suit:

magasins | toilettes

Pour voir toutes les alternatives, nous pouvons canaliser la sortie à travers le column commander pour afficher les noms d'options dans les colonnes, ou nous pourrions le canaliser vers less.

Nous écrivons ce qui suit:

magasins | colonne

Trouver shopt dans le manuel Linux

La section qui traite shopt et ses options sont dans la section Bash du manuel Linux. La section Bash a plus de 6.000 lignes. Vous pouvez trouver la description de shopt avec beaucoup de déplacement, ou tu peux juste chercher dans le manuel.

Pour le faire, ouvrir le manuel dans la section Bash:

homme bash

Dans le manuel, presse / lancer une recherche. Tapez ce qui suit, puis appuyez sur Entrée:

assoc_expand_once

Le début de la shoptLa section des alternatives apparaîtra dans le man la fenêtre.

EN RELATION: Comment utiliser la commande man de Linux: secrets cachés et bases

Options d'armement et de désarmement

A monter et démonter shopt options, utilisez les commandes suivantes:

  • -s: Déterminer ou activer.
  • -vous: Désarmé ou désactivé.

Parce que certaines options sont activées par défaut, il est également utile de vérifier quelles options sont activées. Tu peux le faire avec lui -s et -u options sans utiliser de nom d'option. Ce qui provoque shopt pour lister les alternatives qui sont activées et désactivées.

Écrivez ce qui suit:

magasins -s

magasins -u | colonne

Vous pouvez utiliser un shopt option sans le -s O -u commandes pour afficher l'état d'activation ou de désactivation de chaque option.

Par exemple, nous pouvons écrire ce qui suit pour vérifier la configuration du histverify option:

boutique histvérifier

Nous pouvons écrire ce qui suit pour l'activer:

shopt -s histverify

Ensuite, nous pouvons écrire ce qui suit pour le vérifier à nouveau:

boutique histvérifier

Les histverify L'option change la façon dont un aspect du history la commande fonctionne. En général, si vous demandez history répéter une commande s'y référant par un numéro, Quoi !245, la commande est extraite de l'historique des commandes et s'exécute immédiatement.

Si vous préférez revoir une commande pour vous assurer qu'elle correspond à vos attentes et la modifier, si c'est nécessaire, tapez ce qui suit pour configurer le shopt histverify possibilité d'activer:

!245

La commande est récupérée et présentée sur la ligne de commande. Vous pouvez le supprimer, modifiez-le ou exécutez-le en appuyant sur Entrée.

EN RELATION: Comment utiliser la commande history sous Linux

L'option autocd

Avec lui autocd option activée, si vous tapez le nom d'un répertoire sur la ligne de commande et appuyez sur Entrée, il sera traité comme si vous aviez écrit cd devant ça.

Nous écrivons ce qui suit pour activer le autocd option:

shopt -s autocd

Ensuite, on écrit le nom d'un répertoire:

Documents

L'option cdspell

Quand il cdspell c'est activé, Bash corrigera automatiquement les fautes d'orthographe et les fautes de frappe simples dans les noms de répertoire.

Nous écrivons ce qui suit pour configurer le cdspell option:

shopt -s cdspell

Pour essayer de passer à un répertoire en minuscules qui devrait avoir une lettre majuscule initiale, nous écrivons ce qui suit:

CD-ROM

Ensuite, podemos escribir lo siguiente para probar un nombre de directorio con una “t” adicional en su nombre:

cd ../Images

Bash change dans chaque répertoire, indépendamment des fautes d'orthographe.

L'option xpg_echo

Quand il xpg_echo c'est activé, la commande echo obéira aux caractères d'échappement, Quoi n pour la nouvelle ligne et t pour bride horizontale.

Premier, nous écrivons ce qui suit pour nous assurer que l'option est définie:

boutiques -s xpg_echo

Plus tard, nous incluons n dans une chaîne nous allons echo:

écho "Ceci est la ligne unCeci est la ligne deux"

Le caractère de saut de ligne d'échappement force un saut de ligne à la sortie.

Cela produit le même comportement que le -e (permettre l'interprétation de l'évasion) echo option, mais xpg_echo en fait l'action par défaut.

EN RELATION: Comment utiliser la commande Echo sous Linux

L'option dotglob

Les dotglob L'option doit être traitée avec un peu de prudence. Active les fichiers et répertoires commençant par un point (.) para ser incluido en expansiones de nombres oglobbing”. Estos se denominanarchivos de puntos” O “répertoires de points” et, comme d'habitude, sont cachés. Les dotglob L'option ignore le point au début de leurs noms.

Premier, haremos una búsqueda de archivos o directorios que terminen en “geek” écrivant ce qui suit:

ls *geek

Un fichier est trouvé et répertorié. Ensuite, nous allons allumer le dotglob option en tapant ce qui suit:

shopt -s pointglobe

Nous émettons le même ls comando para buscar archivos y directorios que terminen en “geek”:

ls *geek

Cette fois, deux fichiers sont trouvés et répertoriés, dont l'un est un fichier de points. Il faut être prudent avec rm et mv quand tu as le dotglob option activée.

L'option nocaseglob

Les nocaseglob L'option équivaut à dotglob option, sauf nocaseglob provoque l'ignorance des différences de lettres majuscules et minuscules dans les noms de fichiers et de répertoires dans les extensions de nom.

Escribimos lo siguiente para buscar archivos o directorios que comiencen con “pardon”:

C'est comment*

Un fichier est trouvé et répertorié. Nous écrivons ce qui suit pour activer le nocaseglob option:

shopt -s nocaseglob

Ensuite, repetimos el ls commander:

C'est comment*

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

Apporter des modifications permanentes

Los cambios que hemos realizado solo durarán hasta que cerremos el shell Bash actual. Para que sean permanentes en 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 Gedit (o cámbielo en consecuencia para utilizar el editor que prefiera):

gedit .bashrc

Les gedit El editor se abrirá con el archivo “.bashrc” chargé. Verás algunos shopt las entradas ya están en él.

El editor gedit con .bashrc cargado y las opciones de la tienda resaltadas.

Puedes agregar el tuyo propio shopt opciones aquí además. Cuando los haya agregado, guarde los cambios y cierre el editor. Maintenant, cada vez que abra un nuevo shell Bash, sus opciones estarán configuradas para usted.

Opciones hasta donde cumple la vista

Es verdad el shopt La commande a de nombreuses options, pero no es necesario que las maneje todas al mismo tiempo, si es que alguna vez lo hace. Dado que hay tantos, il y en a probablement qui ne t'intéressent pas.

Par exemple, il y en a beaucoup qui obligent Bash à travailler d'une manière spécifique rétrocompatible. ça peut être utile à quelqu'un, mais c'est un cas bien particulier.

Vous pouvez consulter le bash page de manuel O Manuel de référence GNU Bash. Décidez quelles options vont faire une différence pour vous, puis expérimentez-les. Méfiez-vous simplement des alternatives qui ont un impact sur la façon dont les noms de fichiers et de répertoires sont développés. Testez-les avec une commande bénigne, Quoi ls, jusqu'à ce que vous vous sentiez à l'aise avec eux.

Abonnez-vous à notre newsletter

Nous ne vous enverrons pas de courrier SPAM. Nous le détestons autant que vous.