Respuestas:
Solo corre:
$ shopt extglob
Devolverá el estado actual:
$ shopt extglob
extglob on
$ shopt -u extglob
$ shopt extglob
extglob off
Para mostrar todas las opciones, simplemente ejecute:
$ shopt
Use shopt -q :
shopt -q extglob && echo enable || echo disable
-qla opción hacer shoptdescartar la salida y devolver el estado para indicar que las opciones están configuradas o no.
Tenga en cuenta que shoptsolo informa las opciones que pueden aparecer en BASHOPTSvariable, esas opciones no son válidas para el setcomando incorporado.
Para verificar las opciones que son válidas seto pueden aparecer en SHELLOPTS, use shopt -qo:
$ bash --posix -c 'shopt -qo posix && echo enable || echo disable'
enable
shopt extglob?
shopt extgloby su enfoque escribirán en stdout. ¿Está pensando shopt -q extglob && shopt -u extglob || shopt -s extglob?
shopt -q extglob && : Code when enable || : Code when disable.
Hay dos listas de opciones en bash. Uno para shopty otro para set.
La opción extglobpertenece a la shoptlista.
Su valor puede imprimirse utilizando shopt extglobo shopt -p extglob.
Una opción como nounsetpertenece a la setlista.
Su valor puede imprimirse usando shopt -op nounseto shopt -o nounset.
Para imprimir una opción específica (sin cambiarla) para shopt, use shopt -p name:
$ shopt -p xpg_echo
shopt -u xpg_echo
Y para set, use: shopt -po name(sí, puede usar shopt -oppara la setlista).
$ shopt -po xtrace
set +o xtrace
Para enumerar todas las opciones de shopt, use shopt(o reutilizable shopt -p).
También shopt -so shopt -upodría ser utilizado.
La forma de enumerar todas las opciones setes con set -o(relacionado:) set +o.
O: shopt -oes equivalente a set -oy shopt -opes a set +o.
De LESS=+/'^ *shopt \[' man bash:
Sin opciones, o con la opción -p, se muestra una lista de todas las opciones configurables. Si se utiliza -s o -u sin argumentos de nombre de opción, la visualización se limita a aquellas opciones que están configuradas o no, respectivamente.
De LESS=+/'^ *set \[' man bash:
Si -o se proporciona sin nombre de opción, se imprimen los valores de las opciones actuales. Si + o se suministra sin nombre de opción, en la salida estándar se muestra una serie de comandos establecidos para recrear la configuración de opciones actual.
$ set -o
allexport off
braceexpand on
emacs on
errexit off
errtrace off
functrace off
hashall on
histexpand on
history on
ignoreeof off
interactive-comments on
keyword off
monitor on
noclobber off
noexec off
noglob off
nolog off
notify off
nounset off
onecmd off
physical off
pipefail off
posix off
privileged off
verbose off
vi off
xtrace off
Y
$ shopt -sp
shopt -s checkwinsize
shopt -s cmdhist
shopt -s expand_aliases
shopt -s extglob
shopt -s extquote
shopt -s force_fignore
shopt -s histappend
shopt -s histverify
shopt -s interactive_comments
shopt -s progcomp
shopt -s promptvars
shopt -s sourcepath
Vale la pena mencionar acerca de shopt -opcuál realmente enumera las setopciones:
$ shopt -op
set +o allexport
set -o braceexpand
set -o emacs
set +o errexit
set +o errtrace
set +o functrace
set -o hashall
set -o histexpand
set -o history
set +o ignoreeof
set -o interactive-comments
set +o keyword
set -o monitor
set +o noclobber
set +o noexec
set +o noglob
set +o nolog
set +o notify
set +o nounset
set +o onecmd
set +o physical
set +o pipefail
set +o posix
set +o privileged
set +o verbose
set +o vi
set +o xtrace
shopt -s extglobo, si lo desea, ejecuteshopt -u extglob. No hace ninguna diferencia si estaba encendido originalmente o no.