Yanıtlar:
Seçeneğinde zsh
, setopt
etkin seçenekleri göstermek ve unsetopt
hangilerinin etkin olmadığını göstermek için kullanabilirsiniz :
$ setopt
autocd
histignorealldups
interactive
monitor
sharehistory
shinstdin
zle
$ unsetopt
noaliases
allexport
noalwayslastprompt
alwaystoend
noappendhistory
autocd
autocontinue
noautolist
noautomenu
autonamedirs
.....
İçinde bash
kullanabilirsiniz shopt -p
.
set -o
TAM liste için kullanmalısınız .
Sadece kullan:
[[ -o extended_glob ]]
Bu da işe yarar bash
, ancak yalnızca ayarlanan seçenekler için set -o
değil, ayarlananlar için de geçerlidir shopt
. veya zsh
ile ayarlanabilecek tek bir seçenek kümesi vardır .setopt
set -o
Tıpkı bash
(veya herhangi bir POSIX kabuğunda olduğu gibi ) geçerli seçenek ayarlarını set -o
da set +o
görebilir veya görebilirsiniz.
zsh/parameter
Varsayılan dağıtımının bir parçası olan modül, bir ilişkisel dizi sağlar options
seçenekler üzerinde olduğu gösterilmektedir.
if [[ $options[extended_glob] = on ]]; then …
Tek harfli takma adı olan seçenekler için (durum böyle değildir extended_glob
), ayrıca denetleyebilirsiniz $-
.
Hangi seçeneklerin etkin olduğunu test etmenin nadiren yararlı olduğunu unutmayın. Bir kod parçasındaki bir seçeneği etkinleştirmeniz veya devre dışı bırakmanız gerekirse, bu kodu bir fonksiyona koyun ve local_options
seçeneği ayarlayın . emulate
Seçenekleri varsayılan duruma sıfırlamak için yerleşik kodu çağırabilirsiniz .
my_function () {
setopt extended_glob local_options
}
another_function () {
emulate -L zsh
setopt extended_glob
}
setopt
Yalnızca, bu öykünme modu için varsayılan olarak etkin olmayan seçenekleri yazdırdığına dikkat edilmelidir .