Entrer sur shopt
vous obtiendra une liste de toutes les options de bash qui n'inclut pas globstar pour le bash d'Apple. Il est probable que bash est compilé sans le support de cette option.
Pour obtenir un exécutable bash avec globstar, installez brew et le bash de brew :
$ brew install bash
$ chsh -s /usr/local/bin/bash
$ sudo bash -c 'echo /usr/local/bin/bash >> /etc/shells'
$ ln -s /usr/local/bin/bash /usr/local/bin/bash-terminal-app
Ensuite, changez l'interpréteur de commandes par défaut ouvert dans Terminal en /usr/local/bin/bash-terminal-app et pour supprimer l'invite "Voulez-vous fermer cet onglet ?" lors de la fermeture de Windows et des onglets, ajoutez "bash" à la liste des exclusions.
La nouvelle liste d'options est alors :
$ shopt
autocd off
cdable_vars off
cdspell off
checkhash off
checkjobs off
checkwinsize on
cmdhist on
compat31 off
compat32 off
compat40 off
compat41 off
compat42 off
compat43 off
complete_fullquote on
direxpand off
dirspell off
dotglob off
execfail off
expand_aliases on
extdebug off
extglob off
extquote on
failglob off
force_fignore on
globasciiranges off
globstar off
gnu_errfmt off
histappend off
histreedit off
histverify off
hostcomplete on
huponexit off
inherit_errexit off
interactive_comments on
lastpipe off
lithist off
login_shell on
mailwarn off
no_empty_cmd_completion off
nocaseglob off
nocasematch off
nullglob off
progcomp on
promptvars on
restricted_shell off
shift_verbose off
sourcepath on
xpg_echo off
Dans certaines circonstances, /usr/local/share/ et ses sous-dossiers sont la propriété de Root (par exemple après l'installation de smartmontools, nmap, node etc. avec leurs installateurs personnalisés) et certaines des étapes échouent. A mon avis, il est préférable de chown -R
les dossiers à l'utilisateur admin qui a installé brew/bash. Dans mon installation quasi-vanille de MacOS et de brew, /usr/local/share et /usr/local/share/locale appartiennent à cet utilisateur administrateur.