पार्सिंग दस्तावेज़ या स्रोत कोड को छोड़कर एक अपरिभाषित चर के लिए डिफ़ॉल्ट मान प्राप्त करने का कोई विकल्प नहीं है।
HISTSIZE
और SAVEHIST
सेटिंग्स नहीं हैं, वे विशेष चर हैं। सभी चर सूचीबद्ध करने का एक तरीका है, लेकिन मुझे उन लोगों को सूचीबद्ध करने का कोई तरीका नहीं है जो विशेष हैं और सेटिंग्स के रूप में उपयोग किए जाते हैं।
चर के रूप में लागू पैरामीटर सूचीबद्ध करने में आपकी सहायता के लिए, zsh/parameter
मॉड्यूल (zmodload zsh/parameter
इसे लोड करने के लिए) है। इसमें एक सहयोगी सरणी $parameters
है जहां कुंजी परिवर्तनीय नाम हैं और मान परिवर्तनीय प्रकार के वर्णन हैं। HISTSIZE
और SAVEHIST
दोनों integer-special
के रूप में दिखाई देते हैं। HISTCHARS
scalar-special
के रूप में दिखाई देता है। ध्यान दें कि RANDOM
यहां HISTSIZE
: integer-special
जैसा दिखाई देता है, इसलिए आप विकल्पों के रूप में उपयोग किए जाने वाले विशेष चर प्राप्त करने के लिए इसका उपयोग नहीं कर सकते हैं। लेकिन आप man zshparam
के PARAMETERS USED BY THE SHELL
अनुभाग का उपयोग कर सकते हैं।
मुझे किसी भी विकल्प के बारे में पता नहीं है जो आपको उन पैरामीटर के डिफ़ॉल्ट मान निर्धारित करने की अनुमति देगा, पार्सिंग दस्तावेज़ या स्रोत कोड को छोड़कर।
# setopt | grep hist
nobanghist
extendedhistory
histfcntllock
histignorealldups
histignorespace
histnostore
histreduceblanks
histsavenodups
histverify
incappendhistory
आप गैर डिफ़ॉल्ट सेटिंग्स देखना चाहते हैं:
यदि कोई तर्क आपूर्ति की जाती है, वर्तमान में सेट सभी विकल्प के नाम मुद्रित कर रहे हैं। फॉर्म को चुना गया है ताकि वर्तमान अनुकरण के लिए डिफ़ॉल्ट विकल्पों से अंतर को कम किया जा सके (डिफ़ॉल्ट इम्यूलेशन मूल zsh होने के नाते, zshoptions (1) में दिखाया गया है)। अनुकरण के लिए डिफ़ॉल्ट रूप से विकल्प जो उपसर्ग के साथ दिखाए जाते हैं, वे केवल तभी बंद होते हैं, जबकि अन्य विकल्प उपसर्ग संख्या के बिना दिखाए जाते हैं और केवल तभी होते हैं। विकल्प के अलावा उपयोगकर्ता द्वारा डिफ़ॉल्ट स्थिति में बदल दिया गया है, शैल द्वारा स्वचालित रूप से सक्रिय किए गए किसी भी विकल्प (उदाहरण के लिए, SHIN_STDIN या INTERACTIVE) सूची में दिखाया जाएगा। प्रारूप को KSH_OPTION_PRINT विकल्प द्वारा आगे संशोधित किया गया है, हालांकि इस मामले में बिना किसी उपसर्ग के या बिना विकल्पों को चुनने के लिए तर्क समान रहता है।
यह भी उपयोग करने के लिए समझ में आता है:
# unsetopt | grep hist
noappendhistory
cshjunkiehistory
histallowclobber
nohistbeep
histexpiredupsfirst
histfindnodups
histignoredups
histlexwords
histnofunctions
nohistsavebycopy
histsubstpattern
sharehistory
कोई तर्क आपूर्ति की जाती है, तो सभी विकल्प वर्तमान में सेट नहीं के नाम मुद्रित कर रहे हैं।
या सिर्फ मदद का पालन करें और का उपयोग
# setopt kshoptionprint
# setopt | grep hist
noappendhistory off
nobanghist on
cshjunkiehistory off
extendedhistory on
histallowclobber off
nohistbeep off
histexpiredupsfirst off
histfcntllock on
histfindnodups off
histignorealldups on
histignoredups off
histignorespace on
histlexwords off
histnofunctions off
histnostore on
histreduceblanks on
nohistsavebycopy off
histsavenodups on
histsubstpattern off
histverify on
incappendhistory on
sharehistory off
ध्यान दें कि setopt
और unsetopt
मैच के उत्पादन में जब kshoptionprint
विकल्प प्रयोग किया जाता है।
धन्यवाद, लेकिन यह केवल बूलियन सेटिंग्स को दर्शाता है। यह HISTSIZE और SAVEHIST नहीं दिखाता है जो पूर्णांक सेटिंग्स हैं। –
@RobBednark वे सेटिंग्स नहीं हैं। वे विशेष चर हैं। * सभी * चर सूचीबद्ध करने का एक तरीका है, लेकिन मुझे केवल उन लोगों को सूचीबद्ध करने का कोई तरीका नहीं है जो विशेष हैं और सेटिंग्स के रूप में उपयोग किए जाते हैं। – ZyX
और कुछ विशेष चर (जिन्हें सी मॉड्यूल में परिभाषित किया गया है) पूरी तरह से सूचीबद्ध नहीं हैं (वे 'सेट' आउटपुट में दिखाई देते हैं, लेकिन बिना किसी मूल्य के)। – ZyX