Je trouve souvent ennuyant (ou pire) quand je tape
command .*
Dans bash et la commande s'applique au répertoire parent et au répertoire actuel. Existe-t-il une option de shell ou une autre configuration que je peux modifier pour faire bash exclure .
Et ..
de l'expansion de .*
?
En bash, dans cet ordre:
GLOBIGNORE=. shopt -u dotglob
Lorsque GLOBIGNORE est configuré,. Et … sont automatiquement ignorés, donc vous n'avez pas vraiment besoin de les configurer dans GLOBIGNORE, mais si vous n'avez rien d'autre à ignorer, vous n'aurez rien à configurer.
Chaque fois que vous réglez GLOBIGNORE sur une valeur non nulle, bash active l'option dotglob
, vous devrez donc l'éteindre par la suite; Sinon, bash va se développer *
pour inclure des fichiers commençant par un point.
Sur un système inconnu où j'ai trop peu de temps pour vérifier les paramètres utilisés (comme GLOBIGNORE), j'utilise le modèle infaillible suivant:
command .??*
.
Et ..
indépendamment de l'environnement.