बैश इतिहास को पूरी तरह से कैसे साफ़ करें?

मैं अपने सर्वर के इतिहास से पिछले सभी आदेशों को साफ़ करना चाहता हूं । मैंने इस्तेमाल किया history -c और ऐसा लगता है कि सभी चीजें साफ हो गई हैं लेकिन जब मैं सर्वर पर एसएसएच करता हूं, तो सभी कमांड अभी भी हैं ।

मैं उन्हें स्थायी रूप से कैसे साफ़ कर सकता हूं?

फ़ाइल ~/.bash_history इतिहास धारण करता है ।

सर्वर पर बैश इतिहास को पूरी तरह से साफ़ करने के लिए, टर्मिनल खोलें और टाइप करें

cat /dev/null > ~/.bash_history

अन्य वैकल्पिक तरीका लिंक करना है ~/.bash_history को /dev/null

हालांकि,

एक कष्टप्रद दुष्प्रभाव यह है कि इतिहास प्रविष्टियों में एक है मेमोरी में कॉपी करें और यह होगा जब आप लॉग आउट करते हैं तो फ़ाइल पर वापस फ्लश करें.

इसे हल करने के लिए, निम्न कमांड का उपयोग करें (मेरे लिए काम किया):

cat /dev/null > ~/.bash_history && history -c && exit

क्या करें:

में हर एक ओपन बैश शेल (आपके पास कई टर्मिनल खुले हो सकते हैं):

history -chistory -w

क्यों: जैसा कि ऊपर बताया गया है, history -c फ़ाइल खाली करता है ~/.bash_history. यह ध्यान रखना महत्वपूर्ण है कि बैश शेल तुरंत इतिहास को बैश_हिस्टोर फ़ाइल में फ्लश नहीं करता है । इसलिए, (1) इतिहास को फ़ाइल में फ्लश करना महत्वपूर्ण है, और (2) इतिहास को साफ़ करें, सभी टर्मिनलों में. ऊपर दिए गए आदेश यही करते हैं ।

संदर्भ: http://www.giannistsakiris.com/index.php/2007/09/13/how-to-clear-bash-history-and-what-to-watch-out-for/

इतिहास को हमेशा के लिए साफ़ करने के लिए निम्नलिखित आदेशों को निष्पादित करें

history -c && history -w

गुड लक!

एक और बहुत आसान है: चल रहा है history -c टर्मिनल प्रॉम्प्ट पर और चला गया में सभी प्रविष्टियाँ हैं bash_history फ़ाइल।

ऐसा करने का एक और तरीका है हटाना ~/.bash_history का उपयोग करके फ़ाइल rm ~/.bash_history कमान। जब आप दूसरी बार लॉगिन करते हैं, तो .bash_history फ़ाइल स्वचालित रूप से बनाई जाएगी ।

वर्तमान शेल का इतिहास साफ़ करें:

history -c

जब आप लॉग आउट करते हैं, तो आपके वर्तमान शेल का इतिहास ~/में जोड़ा जाता है । बैश_इतिहास, जो पिछले गोले के इतिहास का एक कैश है, अधिकतम संख्या में ("मैन बैश"में हिस्टफाइलसाइज़ देखें) ।

यदि आप इतिहास को पूरी तरह से हटाना चाहते हैं, तो आपको अनिवार्य रूप से ~/खाली करना होगा । बैश_इतिहास जो उपरोक्त प्रविष्टियों में से कई ने सुझाव दिया है । जैसे कि:

history -c && history -w

यह वर्तमान शेल के इतिहास को साफ़ करता है और फिर वर्तमान शेल के इतिहास (खाली) को ओवरराइट करने के लिए मजबूर करता है ~/ । बैश_इतिहास।...या अधिक सटीक होने के लिए, यह इसे हिस्टफाइल को अधिलेखित करने के लिए मजबूर करता है (जो डिफ़ॉल्ट रूप से ~/ । बैश_इतिहास)।

आशा है कि यह मदद करता है ।

rm ~/.bash_history; history -c; logout

अब वापस लॉग इन करें और गवाह करें कि आपका तीर-अप आपको कुछ भी नहीं देता है ।

यह एक कोशिश करो

संपादित करें अपने .profile और फ़ाइल के अंत में नीचे दी गई रेखा जोड़ें

rm -f .bash_history

इस तरह, हर बार जब आप लॉगिन करते हैं, तो यह आपके को हटा देगा । आपके लिए स्वचालित रूप से बैश_इतिहास फ़ाइल । - आर रिकर्सिव निकालें विकल्प जोड़ना खतरनाक लगता है और इसकी आवश्यकता नहीं है ।