चर द्वारा दर्शाई गई फ़ाइल में Zsh, इनपुट लाइनों (संभवतः समय की जानकारी के साथ) को संग्रहीत करता है HISTFILE। यह एक पूर्ण फ़ाइल नाम होना चाहिए (अन्यथा यह उस समय जो भी निर्देशिका है उसके सापेक्ष व्याख्या की जाएगी)।
Zsh के लिए कोई अंतर्निहित डिफ़ॉल्ट मान नहीं है HISTFILE। Zsh वितरण नए उपयोगकर्ताओं के लिए एक सेटअप विज़ार्ड के साथ आता है, जिसमें ~/.histfileनिर्मित मूल्य होता है, इसलिए यही zsh उपयोगकर्ताओं को डिफ़ॉल्ट रूप से मिलता है। ओह-माय-ज़श HISTFILE=.zhistoryप्रीसेट के साथ आता है । तो ऐसा लगता है कि आपने डिफ़ॉल्ट सेटअप और ओह-माय-ज़श दोनों के साथ zsh की कोशिश की। .zshrcयह देखने के लिए कि आप वर्तमान में किसका उपयोग कर रहे हैं, यह देखने के लिए अपनी (या फ़ाइल तिथियों की) जाँच करें ।
Zsh फ़ाइल को कैसे खोलता है, और इसलिए यदि यह एक प्रतीकात्मक लिंक है तो क्या होता है, कई विकल्पों पर निर्भर करता है।
- यदि विकल्पों में से एक
append_history(डिफ़ॉल्ट रूप से सेट), inc_append_historyया share_historyसेट किया गया है, या जब इतिहास के साथ स्पष्ट रूप से सहेजा जाता है fc -AI, तो zsh मौजूदा फ़ाइल में संलग्न होता है।
ध्यान दें कि इन सेटिंग्स के तहत, zsh कभी-कभी फ़ाइल को ओवरराइट कर देता है जैसा कि नीचे दिया गया है ताकि इसे आकार में नीचे ट्रिम किया जा सके।
- अन्यथा, यदि विकल्प
hist_save_by_copyसेट किया गया है (यह डिफ़ॉल्ट रूप से zsh 5.0 के बाद से सेट है, लेकिन 4.2 में मौजूद नहीं है), zsh एक अस्थायी फ़ाइल लिखता है, फिर पूर्ण होने पर इसे स्थानांतरित करता है। इस मामले में, यदि इतिहास फ़ाइल एक प्रतीकात्मक लिंक थी, तो नई फ़ाइल प्रतीकात्मक लिंक को बदल देती है।
- अन्यथा zsh मौजूदा फ़ाइल को जगह में अधिलेखित कर देता है।
एक प्रतीकात्मक लिंक पर बिंदु zsh के बजाय, HISTFILEजहाँ भी आप इतिहास फ़ाइल होना चाहते हैं, वहां सेट करें।
इतिहास में से कितने लाइनों रखा जाता है चर के माध्यम से कॉन्फ़िगर किया गया है HISTSIZEऔर SAVEHIST। HISTSIZEएक सत्र में रखी गई SAVEHISTलाइनों की अधिकतम संख्या है और इतिहास फ़ाइल में रखी गई लाइनों की अधिकतम संख्या है।
कुछ सब पर बचाया इतिहास पाने के लिए आपको दोनों निर्धारित करने की आवश्यकता HISTFILEहै और SAVEHIST, के रूप में के डिफ़ॉल्ट मान SAVEHIST0. आप को बढ़ाने के लिए चाहते हो सकता है है HISTSIZEके रूप में अच्छी तरह से (zsh 5.0 के रूप में, डिफ़ॉल्ट केवल 30 है)।
~/.zshrcऔर / या/etc/zshrcवहाँ वर्णित विकल्पों के लिए जाँचें zsh.sourceforge.net/Guide/zshguide02.html#l17